问题
使用comboBox时,想用Text属性为其设置默认值,但是无论在哪里设置都无法为其设置默认值
原因
不能够直接对 combobox.text 进行设置,需要先设置combobox.datasource 的值,然后再对 combobox.text 进行设置。
例如:
// 此时 combobox.datasource = null; "test" 不包含于 combobox.datasource
// 所以此时仍然显示为空值
combobox.text = "test";
正确示例:
List<string> list = new List<string>();
list.add("test1");
list.add("test2");
combobox.datasource = list;
combobox.text = "test2";
// "test2" 包含于 combobox.datasource({"test1","test2"})
// 此时将显示默认值test2
注意:
dataSource中的各项类型必须为字符串类型,否则也将无法设置,因为在dataSource中无法找到该项。
示例:
List<int> list = new List<int>();
list.Add(1000);
list.Add(2000);
list.Add(5000);
list.Add(8000);
this.comRowsPerPage.DataSource = list;
this.comRowsPerPage.Text = "8000";
// 因为与DataSorce中的类型不一致,将显示空
正确示例:
List<string> list = new List<string>();
list.Add("1000");
list.Add("2000");
list.Add("5000");
list.Add("8000");
this.comRowsPerPage.DataSource = list;
this.comRowsPerPage.Text = "5000";