所以我有一个组合框 - 设计师代码:
this.cmbStatusBox.Items.AddRange(new object[] {
"Ordered",
"Cooking",
"In-transit",
"Delivered"});
Run Code Online (Sandbox Code Playgroud)
表单加载代码:
if (mainForm.boolEdit == true)
{
this.cmbStatusBox.Items.AddRange(new object[] {
"Cooking",
"In-transit",
"Delivered"});
}
else
{
this.cmbStatusBox.Items.AddRange(new object[] {
"Ordered"});
}
Run Code Online (Sandbox Code Playgroud)
如您所见,我试图让组合框具有不同的值.事实上,我在设计师和组合框中的形式上都得到了什么.
我怎么能阻止这个?
我也有一个编辑功能,所以当我编辑一个记录时,我希望组合框由已经保存的内容填充.
只是一个随机问题,你能阻止用户输入一个不在组合框中的值吗?
谢谢
如果您想要替换当前内容,则需要致电
this.cmbStatusBox.Items.Clear();
Run Code Online (Sandbox Code Playgroud)
在添加新值之前.
ComboBoxMSDN页面
ComboBox.ItemsMSDN页面
DropDownStyle属性还指定是否可以编辑文本部分.
价值观是:
简单指定列表始终可见,文本部分可编辑.这意味着用户可以输入新值,而不仅限于在列表中选择现有值.
DropDown指定通过单击向下箭头显示列表,并且文本部分是可编辑的.这意味着用户可以输入新值,而不仅限于在列表中选择现有值.使用此设置时,AutoCompleteMode的Append值与SuggestAppend值的作用相同.这是默认样式.
DropDownList指定通过单击向下箭头显示列表,并且文本部分不可编辑.这意味着用户无法输入新值.只能选择列表中已有的值.仅当AutoCompleteMode为Suggest或SuggestAppend时,才会显示该列表.
| 归档时间: |
|
| 查看次数: |
255 次 |
| 最近记录: |