我有一个ComboBox
也可以通过两个按钮控制。但我想将执行与使用ComboBox
下拉列表和按钮分开。
comboBox3.DropDownClosed += (b, f) =>
{
week = Convert.ToInt16(comboBox3.Text);
Console.WriteLine(week);
};
我尝试了这种方法,但是当下拉列表关闭并选择其他值时似乎没有更新周。
答案 0 :(得分:1)
如果您想在用户更改ComboBox
的所选索引时执行某些操作,则需要处理SelectionChangeCommitted
事件(而不是SelectedIndexChanged
):
仅在用户更改时引发
SelectionChangeCommitted
事件 组合框选择,您可以为此事件创建处理程序 在用户更改时为ComboBox
提供特殊处理 列表中的所选项目。
另一方面,只要用户或代码更改所选索引,SelectedIndexChanged
就会提升。
因此,您应该编写不同的方法来执行不同的操作,而不是处理SelectedIndexChanged
,例如,处理Button1.Click
并调用Action1
,处理Button2.Click
并调用{ {1}}并处理Action2
以检测用户何时更改所选索引并致电ComboBox.SelectionChangeCommitted
。