c#设计器覆盖了ComboBox数据源

本文关键字:ComboBox 数据源 覆盖 | 更新日期: 2023-09-27 18:01:31

我试图在InitializeComponent中以编程方式设置组合框的数据源。

this.comboBox1.DataSource = (IEnumerable<> from a Linq command);

保存文件,一切正常。但是,一旦我打开设计器,它就会覆盖我的代码。我应该在属性页中设置什么来防止设计器用

替换我的代码:
this.comboBox1.Items.AddRange( new object[] {
    "value1",
    "value2",
    ...
}

,其中硬编码列表是Linq命令的结果。由于DataSource设置在前一行,设计器抛出异常抱怨"DataSource设置后不能更改"。

我应该在属性上指定什么来防止这种情况发生?谢谢。

c#设计器覆盖了ComboBox数据源

您不应该手动编辑InitializeComponent。相反,您应该将该代码放在表单/控件的构造函数(或Load事件)中。