日期:2014-05-18  浏览次数:20794 次

comBobox的连动过滤问题?
为什么我在四个comBobox的连动的时候,会出现这样的问题 (cbx.selectedValue="System.data.datarowview")呢

我的操作如下:
第一个cbx1在控件中绑定
选择第一个cbx1,筛选出每二个CBX2的值,在每二个cbx1的SelectedValueChanged()事件中
{
  if(cbx1.selectedValue!=null)
  {
  绑定第三个cbx2
  }
}

在每二个cbx2的SelectedValueChanged()事件中
{
  if(cbx2.selectedValue!=null)
  {
  绑定第三个cbx3
  }
}

再在第三个cbx3的SelectedValueChanged()事件中
{
  if(cbx3.selectedValue!=null)
  {
  绑定第三个cbx4
  }
}

在还没有执行到cbx2.valuemember的时候就跳到SelectedValueChanged()事件中去执行了(结果使if(cbx2.selectedValue!=null)这个进行验证的时候,会出现cbx2.selectedValue="System.data.datarowview"))

希望大家给予帮助,谢谢!


------解决方案--------------------
先设置ValueMember,DisplayMember,再设置DataSource,

如果你是帮定的DataTable,在获取选择值的时候,先

DataRowView drv = ComboBox.SelectedItem as DataRowView

if(drv != null)
{
}