DataGridView中:
1、第1列和第2列都是一个Combox
2、第1列在初始化的时候就绑定了值。第2列没有绑定值。
要求:根据第1列的选定值,到数据库取得数据后绑定数据到第2列。因此每行的第2列数据都不同。问题:第1行1列选择一个值后,会自动新增第2行,并且第2行2列与第1行有相同的Item.
错误:第2行1列选择不同于第1行1列的值后,
"System.ArgumentException: DataGridViewComBoxCell 值无效 
要替换此默认对话框,请处理DataError事件"

解决方案 »

  1.   

    你把问题上溢了。简单的说,不同的数据源应该是指你后台的数据来源,不应该是UI访问的部份。
    思路是你在数据处理层将这些不同的数据源整合成统一的数据表达,提供给UI。
    看来你的老师很是会误人嘛。赫赫。
      

  2.   

    研究出来了:
    原因:每行的ComBox必须类型相同。
    解决:在每行的ComBox中增加一个空格.
      DataGridViewComboBoxCell cb = (DataGridViewComboBoxCell)gvList.Rows[Rows].Cells[4];
     foreach (DataRow dr in dt.Rows)
     {
       cb.Items.Add(dr[0]);           
     } 
     cb.Items.Add(" ");