[.NET] ListBox判斷問題

作者: captcha (好心沒好報)   2013-08-02 18:09:56
請輸入專案類型(網站專案或者應用程式專案):
先附上程式碼@@
Public Class Form6
Private Sub Form6_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
ListBox1.Items.Add("歌曲1")
ListBox1.Items.Add("歌曲2")
ListBox1.Items.Add("歌曲3")
ListBox1.Items.Add("歌曲4")
ListBox1.Items.Add("歌曲5")
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
For Each item As Object In ListBox1.SelectedItems
For i As Integer = 1 To ListBox2.Items.Count + 1
If item = ListBox2.SelectedItems(i - 1) Then
MsgBox("已在歌單裡")
Else
ListBox2.Items.Add(item)
End If
Next
Next
End Sub
End Class
此範例是用兩個ListBox以及一個Button建立一個歌曲選取程式,跟著書本範例做好後,
發現可以一直從ListBox1重覆選取一樣的歌曲到ListBox2,因此便想用一個判斷式
去判斷是否該"歌曲"已經存在於ListBox2,如果已經存在,就產生訊息告知說
"已在歌單裡",如果沒有才允許新增至ListBox2。
想請問的是判斷式的部分"If item = ListBox2.SelectedItems(i - 1)"為何產生錯誤?
希望可以幫忙解答一下^^"
(把Button1_Click第二層迴圈拿掉,留下ListBox2.Items.Add(item),就是原本的程式了)
作者: MOONRAKER (㊣牛鶴鰻毛人)   2013-08-02 18:37:00
你要看他是否在list2內,為什麼卻是檢查selecteditems檢查listbox2.items不就好了你for都針對他count了咧
作者: EShensh (蕭易玄)   2013-08-03 14:12:00
都已經計次了,怎麼沒逐一檢查每項,卻去找選取的東西?

Links booklink

Contact Us: admin [ a t ] ucptt.com