[.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