作者treebird (树鸟)
看板Visual_Basic
标题[.NET] 请问在ComboBox中塞入第一行空白产生的问题
时间Sat Mar 25 20:54:29 2006
想请问个位大大关於在ComboBox中塞入第一行空白产生的问题
我从资料库里面抓一份资料(比如说是离职原因)
id: 1 text: 不想干了
id: 2 text: 薪水太低
将此份资料读入tableSELECT中
那我现在要在里面塞入第一行是空白,然後再放入ComboBox,程式码如下:
dim newrow as DataRow = tableSELECT.NewRow
newrow.item(0)=""
newrow.item(1)=""
tableSELECT.Rows.InsertAt(newrow,0)
ComboBox.DataSource=tableSELECT
ComboBox.DisplayMember="text"
ComboBox.ValueMember="value"
问题来了:
1.
我在初始值当中会将ComboBox设定为空白
通常会使用ComboBox.SelectedValue=""
在没有塞入第一航空白的情况下,会顺利清空
但是在塞入第一航空白的情况下,会显示错误讯息
指定的引数超出有效值的范围。
参数名称: -2147483648不是index的有效值。
使用ComboBox.SelectedIndex=0 可以解决,但是对於上面错误讯息觉得奇怪
请问个位大大问题出在哪里? 如果塞入的空白行 id="0" 还会产生此问题吗?
2.
点选後储存资料如果是点选第一笔 id: 1 text: 不想干了
当重新读取资料出来时就会出错 程式中是 ComboBox.SelectedValue="1"
也是显示错误
指定的引数超出有效值的范围。
参数名称: -2147483648不是index的有效值。
但是如果读取是第二笔(ComboBox.SelectedValue="2")就不会有问题
(ps.有n笔的话,就是空白跟第一笔会有问题)
应该是跟上面问题一样,想请问一下个位大大问题出在哪里?该如何解决呢?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.121.149.108