以编程方式触发ASP.NET控件事件的正确方法是什么?我正在寻找重构一些代码,我看到代码后面的代码如下所示; 开发人员正在调用事件处理程序并使用params使其饱和.对于DropDownList
ddlAddress.SelectedIndex = 1;
ddlAddress_SelectedIndexChanged(null, new EventArgs());
Run Code Online (Sandbox Code Playgroud)
&对于RadioButtonList
rblAction.SelectedIndex = 0;
rblActionType_SelectedIndexChanged(null, new EventArgs());
Run Code Online (Sandbox Code Playgroud)
这是正常的编码练习吗?我该怎么办才能不破坏/破坏页面?任何想法或建议将不胜感激.
谢谢,〜在圣地亚哥
我首先从实际事件的方法中删除所有代码并将其重构为一个名为AddressChanged的新方法或其他适合您命名标准的方法.然后,您可以从代码中的任何其他位置调用该新函数.
protected void ddlAddress_SelectedIndexChanged(object sender, EventArgs e){
AddressChanged();
}
private void AddressChanged(){
//do the changed event
}
private void doingSomething(){
ddlAddress.SelectedIndex = 1;
AddressChanged();
}
Run Code Online (Sandbox Code Playgroud)