考虑一个带有简单组合框的非常基本的表单
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
this.comboBox1.Items.Add("test1");
this.comboBox1.Items.Add("test2");
this.comboBox1.Items.Add("test3");
}
private void Form1_Load(object sender, EventArgs e)
{
this.comboBox1.SelectedIndexChanged += (o, args) =>
{
MessageBox.Show("Combo box changed!");
};
}
}
我甚至将eventhandler更改为以下代码。 (基于相关问题。仍然是同样的问题)
this.comboBox1.SelectedValueChanged += (o, args) => //or even `Textchanged` event too
{
MessageBox.Show("Combo box changed!");
};
使用mouse
展开下拉菜单,然后使用keyboard
选择任何项目。
组合框会触发两次(消息框出现两次)
任何想法为什么?
答案 0 :(得分:0)
似乎这是底层框架的错误。
所以,我设法解决了这个问题。
以下是: