我试图在InitializeComponent中以编程方式设置ComboBox的DataSource。
this.comboBox1.DataSource = (IEnumerable<> from a Linq command);
我保存文件,一切正常。但是,只要我打开Designer,它就会覆盖我的代码。我应该在“属性”页面中设置什么来阻止Designer用以下代码替换我的代码:
this.comboBox1.Items.AddRange( new object[] {
"value1",
"value2",
...
}
其中硬编码列表是Linq命令的结果。由于DataSource是在早期行中设置的,因此Designer抛出异常抱怨“DataSource在设置后无法更改”。
我应该在属性上指定什么来防止这种情况发生?感谢。
答案 0 :(得分:1)
您不应手动编辑InitializeComponent。相反,您应该将该代码放在表单/控件的构造函数(或Load事件)中。