是否可以在选择其他控件时引发其他控件的事件
本文关键字:控件 其他 事件 选择 是否 | 更新日期: 2023-09-27 18:00:46
我的表单上有一个下拉菜单和一个单选按钮。我想做的是在drodown_SelectedIndexChanged
上调用radio_CheckedChanged
。有人能告诉我做的最佳方法吗
除非从类中继承,否则不可能从定义它的类外部引发事件。
如果您的目标是对RadioButton.CheckedChanged和DropDownList.SelectedIndexChanged事件执行相同的操作,则可以在单独的方法中提取代码,并从两个事件处理程序中调用它:
public void radioButton_CheckedChanged(object sender, EventArgs e)
{
DoSomething();
}
public void dropDownList_SelectedIndexChanged(object sender, EventArgs e)
{
DoSomething();
}
private void DoSomething()
{
// ...
}
我可能过于简化了这一点,但在您的dropdown_SelectedIndexChanged中,您可以只设置单选按钮值,这将触发选中的更改事件,或者如果您不想更改值,只需从您的dropdown_SelectedIndixChanged事件中调用radio_CheckedChanged。
您能更新radio.Checked
属性,使其自动触发事件吗?事件持有者知道何时引发事件。
只需编写radio_CheckedChanged(sender, EventArgs.Empty)
。这很像调用一个实际上是什么的方法。
编辑
这不是一种优雅的方法,因此如果您可以将代码逻辑封装到单独的方法中,然后根据您的条件在相应的处理程序中调用这些方法,则会更好。