c# – InvalidArgument =值’0’对’SelectedIndex’无效.参数名
发布时间:2020-12-15 08:40:26 所属栏目:百科 来源:网络整理
导读:我在尝试此代码时遇到上述错误.我试过给 just my code 但没用. (这是默认的) Here is my XML file 错误发生在cmbProduct_SelectedIndexChanged事件中. cmbProduct -- combobox cmbBrand -- combobox 全球 DataSet dsUpdate = new DataSet(); 的Form_Load dsU
我在尝试此代码时遇到上述错误.我试过给
just my code但没用. (这是默认的)
Here is my XML file 错误发生在cmbProduct_SelectedIndexChanged事件中. cmbProduct --> combobox cmbBrand --> combobox 全球 DataSet dsUpdate = new DataSet(); 的Form_Load dsUpdate.ReadXml(@".....stock.xml"); cmbProduct.DataSource = dsUpdate.Tables[0] .DefaultView.ToTable(true,"productname");//.DefaultView; cmbProduct.DisplayMember = "productname"; cmbProduct.SelectedIndex = 0; cmbProduct_SelectedIndexChanged cmbBrand.Items.Clear(); foreach (DataRow Row in dsUpdate.Tables[0].Select("productname='" + cmbProduct.Text + "'")) { //cmbBrand.SelectedIndex = i; cmbBrand.Items.Add(Row["brandname"].ToString()); //i++; } cmbBrand.SelectedIndex = 0; /*ERROR*/ 请帮忙 解决方法
问题是:
当你启动应用程序时,cmbBrand中没有项目,但cmbProduct会触发SelectedIndexChanged. 试试这个: 从Form1.Designer.cs中删除SelectedIndexChanged事件初始化.尝试找到以下行: this.cmbProduct.SelectedIndexChanged += new System.EventHandler(this.cmbProduct_SelectedIndexChanged); 之后,当您使用xml文件中的数据填充DataSet时,初始化SelectedIndexChanged事件: dsUpdate.ReadXml(@".....stock.xml"); cmbProduct.DataSource = dsUpdate.Tables[0].DefaultView.ToTable(true,"productname");//.DefaultView; cmbProduct.DisplayMember = "productname"; this.cmbProduct.SelectedIndexChanged += new System.EventHandler(this.cmbProduct_SelectedIndexChanged); cmbProduct.SelectedIndex = 0; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |