Огонь Меню Полоса Элемента Нажмите Событие Динамически в C # Windows Form - PullRequest
1 голос
/ 24 октября 2019

Я уже добавил контроллер полосы меню и добавил события щелчка для этих пунктов меню.

Пример:

private void mnuaddTestingBuyersForFigures_Click(object sender, EventArgs e)
{
   frmAddTestingBuyersForFigure obj = new frmAddTestingBuyersForFigure();
   objUserManagerBll.SetAccess(obj, User.UserID);
   IsAlreadyLoded(obj);
}

private void mnuOperatorIncentive_Click(object sender, EventArgs e)
{
   frmOperatorIncentive obj = new frmOperatorIncentive();
   objUserManagerBll.SetAccess(obj, User.UserID);
   IsAlreadyLoded(obj);
}

private void mnuSetUpIncentiveMonthProcess_Click(object sender, EventArgs e)
{
   frmSetUpWeeksForIncentiveMonth obj = new frmSetUpWeeksForIncentiveMonth();
   objUserManagerBll.SetAccess(obj, User.UserID);
   IsAlreadyLoded(obj);
}

Здесь я хочу запустить событие щелчка выше другого события. Я просто хочу передать имя полосы меню в качестве параметра методу и вызвать соответствующее событие.

Пример:

ShowMe("mnuSetUpIncentiveMonthProcess");
//Out put open the frmSetUpWeeksForIncentiveMonth form

ShowMe("mnuOperatorIncentive");
//Out put open the frmOperatorIncentive form

Без использования условных операторов

1 Ответ

0 голосов
/ 24 октября 2019

Вы можете найти элемент управления по его имени, а затем вызвать его PerformClick() метод:

private void ShowMe(string name)
{
    var item = (MenuStripItem)this.Controls[name];
    item.PerformClick();
}
...