VS2005中,在一个基类窗体BaseForm中添加了一个Combobox,并绑定了数据DataSource,然后继承这个BaseForm。新继承的窗体执行时无法通过,提示“设置 DataSource 属性后无法修改项集合。”。
以下是出错代码(设计器自己添加的)
            this.secondComboBoxEx.DataSource = ((object)(resources.GetObject("secondComboBoxEx.DataSource")));
            this.secondComboBoxEx.DisplayMember = "value";
            this.secondComboBoxEx.Enabled = false;
            this.secondComboBoxEx.Items.AddRange(new object[] {
            ((object)(resources.GetObject("secondComboBoxEx.Items")))});//这句出错
            this.secondComboBoxEx.ValueMember = "key";
这问题困扰了我好久了,初步解决是把这段代码删了,可以运行,但是每次改控件属性设计器就给加上,很麻烦。
请高手赐教,谢谢!

解决方案 »

  1.   

    如果设置了DataSource就不能再设置Items集合了,反之也是如此,在设计时只要不修改Items集合设计器是不会自动生成“this.secondComboBoxEx.Items.AddRange(new object[] {((object)(resources.GetObject("secondComboBoxEx.Items")))});”的,但如果确实如此,建议你将设置DataSource的语句放到窗体构造函数里或load事件里,必要时可在之前显式加一句this.secondComboBoxEx.Items.Clear();
      

  2.   

    LZ你就老老实实用DataSource就行了,何必2个一起搞