根据按钮名称,直接调用方法,适用于用户对按钮的操作权限管理。
/// <summary>
/// 菜单按钮点击事件
/// </summary>
void usrMenu1_UserControlMenuItemClick(object sender, EventArgs e)
{
#region MyRegion
////BtnGetParam 获取参数
//if (Nbi.Name == "BtnGetParam")
//{
// BtnGetParam_Click(sender, e);
//}
////BtnDelete 删 除
//if (Nbi.Name == "BtnDelete")
//{
// BtnDelete_Click(sender, e);
//}
////BtnSaveForm 保 存
//if (Nbi.Name == "BtnSaveForm")
//{
// BtnSaveForm_Click(sender, e);
//}
////BtnSaveForm 刷新
//if (Nbi.Name == "Btnrefresh")
//{
// Btnrefresh_Click(sender, e);
//}
//if (Nbi.Name == "BtnUpdSysID")
//{
// BtnUpdSysID_Click(sender, e);
//}
#endregion
//className是方法所在的类
try
{
ToolStripMenuItem Nbi = (ToolStripMenuItem)sender;//获取按钮对象
MethodInfo mm = this.GetType().GetMethod(Nbi.Name + "_Click");//调用按钮的事件
//obj是方法的返回值,Invoke的第二个参数是执行方法所要的参数,是个数组
object obj = mm.Invoke(this, new object[] { sender, e });
}
catch (Exception ex)
{
MessageBox.Show(ex.Message.ToString());
}
}