组合框选定索引已更改事件为具有相同显示成员的项目触发两次
本文关键字:项目 成员 显示 两次 索引 事件 组合 | 更新日期: 2023-09-27 18:31:57
我有一个组合框,如下所示,包含3个项目("abc","abc"和"bbb")。组合框还具有AutoCompleteMode"SuggestAppend"和AutoCompleteSource"ListItems"属性。现在,我希望文本框显示组合框的选定索引,如下所示:
https://i.stack.imgur.com/X2TO6.png
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
this.textBox1.Text = this.comboBox1.SelectedIndex.ToString();
}
一切似乎都很好,直到我选择第二个"abc",SelectedIndexChanged 事件将第一次进入并在文本框中正确显示索引。但是,当组合框失去焦点时,SelectedIndexChanged 事件将再次触发,从而导致索引显示错误。我发现它只发生在具有相同价值的物品上。有没有办法阻止事件触发两次?
https://i.stack.imgur.com/uazYI.png
this.comboBox1.DataSource = dt;
this.comboBox1.DisplayMember = "Description"; //Some descriptive field to be shown in combobox
this.comboBox1.ValueMember = "Code"; //Unique code that user won't understand
this.comboBox1.SelectedIndex = -1;
comboBox1_SelectedIndexChanged代码
放在comboBox1_ValueChanged中,你会在事件参数中获取索引(发送者,即你的组合框在组合框中投射它)。
使用 comboBox1.SelectedIndex,您将获得索引。