本文是備份,原作請看我的網站:[習題]動態新增 DropDownList或 ListBox底下的新項目(Item)#2 [左右搬移]
http://www.dotblogs.com.tw/mis2000lab/archive/2008/12/01/listbox.item_add_remove.aspx
這個問題也是在 Yahoo知識+ 上看見的
其實我已經發表過一篇文章,相同的用法就能解。[習題]動態新增 DropDownList或 ListBox底下的新項目(Item)?
對付 CheckBox / RaddioButton / ListBox / DropDownList真的很簡單。
相同的程式修修改改,又解了一個問題。
只要一個好範例、一段好用的程式,變化就能很多。
Web控制項裡面, ChecBox / RaddioButton / ListBox / DropDownList這幾個東西都很類似,用法也都差不多。
廣告一下!請看本書第三章,將近一百頁的說明。隨手COPY一個範例就能解這問題!
===================================================================
原本的發問者,想做出這樣的效果:
例外狀況,如果你不點選任何一個子選項,就按下按鈕。
那麼會出現警告訊息!(如下圖)
執行成功的畫面如下:
但是這一支程式,還有一個小缺點。
各位可以看見上圖,搬移之後,「左三」這個子選項還留在原本的地方。 本文最後會再解釋一下。
=======================================================================
HTML設計畫面:
很簡單,左右各一個 ListBox控制項、Button。
我在底下加上 Label來出現警告訊息、或是成功訊息。
後置程式碼:
我的網站不是給初學者、學生抄襲用的,也不是發問後等著COPY程式碼。
所以只展示一小部份。
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一個範例就能解這問題!
好久沒有放今日值班正妹了。
今天的值班正妹----隋棠,http://www.miolife.com/miolife/11/n-325311.html
.....................................................................................................................................................................................
ASP.NET專題實務(文魁出版 / P8187)
.............................................................................................................. 寄信給我 mis2000lab (at) 雅虎.com.台灣 ........
留言列表