winform 中 combox中selectIndex的问题(在先等)
DataSet ds=new DataSet()DataTable dt=new DataTable("result");//"result"中的数据是从数据库中取到的
ds.Tables.add(dt);
this.cboComodityNO.DataSource = ds.Tables["result"];
this.cboComodityNO.DisplayMember = "merchid";
为何在程序运行时,触发cboComStyle_SelectedIndexChanged时,
MessageBox.show(cboComodityNO.SelectedIndex)取到的值总是为-1?为何呢?
请高手教教我,谢谢!在线等 --------------------编程问答-------------------- 调试一下:ds.Tables["result"].Rows.Count是否大于0 --------------------编程问答-------------------- 你直接new了一个ds和dt,有往里填充数据吗? --------------------编程问答-------------------- 应该不会:
除非
1、cboComodityNO中没有数据;
2、在cboComodityNO.SelectedIndex中又调用了其他的操作导致cboComodityNO.SelectedIndex改变了。
--------------------编程问答-------------------- 因为你cboComodityNO.items.count =0
要先付值。后才有索引! --------------------编程问答--------------------
楼主确定绑定的数据源里面有数据吗 ?
然后还要确定绑定的字段和方法是否正确 --------------------编程问答-------------------- 可以通过给外面加一层
try
{}catch{}
的方式 跳过第一次的异常
我是小菜鸟! 说的不好清见谅, 希望能够帮到你! --------------------编程问答--------------------
看你这点代码好象你的DATATABLE里没数据的啊?那combobox里肯定也是没数据的啊!所以返回值肯定是-1咯! --------------------编程问答-------------------- 我已经把数据库里面的数据在界面上面显示了,
我已经在用适配器对象填充了那个datatable,就是selectIndex取值为0,不知道什么原因
看了一个帖子有人在ASP中遇到这个问题的,用一个isPage什么方法,但是那个方法在winform中没有 --------------------编程问答--------------------
同意3楼观点,你快速监视一下就知道了
补充:.NET技术 , C#