這個問題也是在 Yahoo知識+ 上看見的
其實我已經發表過一篇文章,相同的用法就能解。[習題]動態新增 DropDownList或 ListBox底下的新項目(Item)?
搭配上一篇文章使用的 For迴圈,
對付 CheckBox / RaddioButton / ListBox / DropDownList真的很簡單。
相同的程式修修改改,又解了一個問題。
=================================================================
只要一個好範例、一段好用的程式,變化就能很多。
=================================================================
Web控制項裡面, ChecBox / RaddioButton / ListBox / DropDownList這幾個東西都很類似,用法也都差不多。
廣告一下!請看本書第三章,將近一百頁的說明。隨手COPY一個範例就能解這問題!

===================================================================
原本的發問者,想做出這樣的效果:

例外狀況,如果你不點選任何一個子選項,就按下按鈕。
那麼會出現警告訊息!(如下圖)

執行成功的畫面如下:

但是這一支程式,還有一個小缺點。
各位可以看見上圖,搬移之後,「左三」這個子選項還留在原本的地方。 本文最後會再解釋一下。
=======================================================================
HTML設計畫面:
很簡單,左右各一個 ListBox控制項、Button。
我在底下加上 Label來出現警告訊息、或是成功訊息。
後置程式碼:
我的網站不是給初學者、學生抄襲用的,也不是發問後等著COPY程式碼。
所以只展示一小部份。
01 
Protected Sub Button1_Click() Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
02
'== 右移 ==
03
Dim a As Integer = 0
04
05
For i As Integer = 0 To (ListBox1.Items.Count - 1)
06
If ListBox1.Items(i).Selected Then
07
ListBox2.Items.Add(ListBox1.Items(i).Text)
08
a = a + 1
09
End If
10
Next
11
12
If a = 0 Then
13
Label1.Text = "<font color=red>警告!您未點選任何一個子選項</font>"
14
Else
15
Label1.Text = "<font color=blue>移動成功</font>"
16
End If
17
18
End Sub 看見了沒,又是同一段 For迴圈啊~真好用~
上一篇文章介紹的 For迴圈不就是介紹這東西?修修改改又是一個新範例~
=======================================================================
比較好一點的範例,應該是這樣的執行畫面。
當某一個子選項被搬走之後,原本的位置就應該刪除!

這該怎麼寫呢?
很簡單,上面的程式,已經學會了「新增」一個子選項,寫成這樣 ListBox.Items.Add(ListBox.Items(i).Text)
那麼把子選項刪除,就是寫成 ListBox.Items.Remove(ListBox.Items(i).Text)
這個範例也可以改成AJAX版,畫面調一下,就搞定。
「咦?AJAX好像很複雜ㄟ,外面的書都寫了厚厚的一本,我學得會嗎?」
放心,本書只要一章就搞定! 學會重點就好了,外面的AJAX書,大都是放了很多範例。
但VS 2005/2008裡面的AJAX,重點只有幾個,能掌握住,就能千變萬化了
Web控制項裡面, ChecBox / RaddioButton / ListBox / DropDownList這幾個東西都很類似,用法也都差不多。
廣告一下!請看本書第三章,將近一百頁的說明。隨手COPY一個範例就能解這問題!
2008/12/22補充:這裡有另外一篇文章,解相同的問題,請您也參考看看:http://www.allenkuo.com/EBook5/view.aspx?TreeNodeID=31&id=314
2009/11/04補充:有一個相關習題,請參考 [習題] DropDownList / ListBox連動,查詢菜單
本系列共有這幾個習題,請您繼續參考下去:
1). http://www.dotblogs.com.tw/mis2000lab/archive/2008/10/09/dropdownlist_items.add081009.aspx
2). http://www.dotblogs.com.tw/mis2000lab/archive/2008/12/01/listbox.item_add_remove.aspx (本篇文章)
3). http://www.dotblogs.com.tw/mis2000lab/archive/2010/02/10/dropdownlist_add_item_3.aspx
好久沒有放今日值班正妹了。
今天的值班正妹----隋棠,http://www.miolife.com/miolife/11/n-325311.html
...... 寄信給我 mis2000lab (at) 雅虎.com.台灣 ................................................................................................................
ASP.NET專題實務
(文魁出版,VB版 P8187 / C#版P09027)
下集已經出版囉~~~ASP.NET專題實務II:範例應用與4.0新功能 
.............................................................................................................. 寄信給我 mis2000lab (at) 雅虎.com.台灣 ........