c# – Combobox数据绑定显示system.data.datarowview
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了c# – Combobox数据绑定显示system.data.datarowview,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1860字,纯文字阅读大概需要3分钟。
内容图文
我将combobox与datasource,displaymember,valuemember绑定.它在我的电脑上工作正常,但它不适用于客户端电脑.以下是我的源代码:
从UserControl的构造函数调用cbxAlloyBinding方法.
private void cbxAlloyBinding()
{
DataTable dt = new DataTable();
SqlDataAdapter adp = new SqlDataAdapter("SELECT alloyName,alloyId FROM alloy", con);
adp.Fill(dt);
if (dt.Rows.Count > 0)
{
cbxMetal.DisplayMember = "alloyName";
cbxMetal.ValueMember = "alloyId";
cbxMetal.DataSource = dt;
}
else
{
cbxMetal.Text = "";
}
}
private void cbxMetal_SelectedIndexChanged(object sender, EventArgs e)
{
if (cbxMetal.SelectedIndex != -1)
{
DataTable dt = new DataTable();
tempcmd = new SqlCommand("SELECT specification,alloyCode FROM alloy where alloyId='" + cbxMetal.SelectedValue + "'", con);
SqlDataAdapter adp = new SqlDataAdapter(tempcmd);
adp.Fill(dt);
if (dt.Rows.Count > 0)
{
txtSpecification.Text = dt.Rows[0]["alloyCode"].ToString();
txtSupplyConditions.Text = dt.Rows[0]["specification"].ToString();
cbxheatBinding();
}
else
{
txtSpecification.Text = "";
}
}
}
这让我困扰了最近两天,我几乎尝试了所有的技巧,但它仍然无法正常工作.
客户端的PC使用的是Windows 7 ultimate,sql server 2005和.net framework 3.5.
解决方法:
如果在构造函数中调用cbxAlloyBinding()之前调用了cbxMetal_SelectedIndexChanged,则肯定会发生这种情况.
例如(请参阅下面的代码),您可能在构造函数中有其他组合框绑定,这可能在构造函数中的cbxAlloyBinding()之前,并且这些绑定正在调用cbxMetal_SelectedIndexChanged.
public Constructor()
{
InitializeComponent();
cbxheatBinding(); //1st Three Binding Methods may be somehow related to your cbxMetal,
dtpStartDateBinding(); //which leads them to call cbxMetal_SelectedIndexChanged method.
dtpEndDateBinding();
cbxAlloyBinding();
}
我怀疑你的cbxMetal.DataSource是从你的代码中的其他一点设置的,并且在分配了DisplayMember和ValueMember之前;
请记住,System.DataRow.DataRowView只会发生
ComboBox.SelectedValue
is called beforeValueMember
assignment.
内容总结
以上是互联网集市为您收集整理的c# – Combobox数据绑定显示system.data.datarowview全部内容,希望文章能够帮你解决c# – Combobox数据绑定显示system.data.datarowview所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。