选择的项目更改ComboBox

时间:2011-05-03 01:16:59

标签: c# winforms combobox

是否有任何方法可以防止仅在某些情况下更改ComboBox中的所选项目?我想允许在ComboBox中更新所选项目的displayValue。但我不希望用户在更新时更改所选项目。这是一个Windows应用程序。

2 个答案:

答案 0 :(得分:1)

在课堂上:

private int _selectedIndex = 0;

在表单加载方法中:

comboBox1.Enter += new EventHandler(comboBox1_Enter);
comboBox1.SelectedIndexChanged += new EventHandler(comboBox1_SelectedIndexChanged);

然后是其余的代码:

protected void comboBox1_SelectedIndexChanged(object sender, EventArgs e) {
    if (true) { // Add your validation or certain condition here.
        (sender as ComboBox).SelectedIndex = _selectedIndex;
    }
}

protected void comboBox1_Enter(object sender, EventArgs e) {
    _selectedIndex = (sender as ComboBox).SelectedIndex;
}

答案 1 :(得分:0)

尝试设置将Enabled属性设置为false。 (或者像Telerik这样的第三方工具包有一个带有ReadOnly属性的ComboBox。)