Как вы выполняете Click (); для кнопки на другой вкладке?

#c# #winforms #visual-studio-2010 #button #event-handling

#c# #winforms #visual-studio-2010 #кнопка #обработка событий

Вопрос:

Я использую Visual c # express 2010, у меня есть 3 вкладки, и на первой вкладке есть кнопка, которая завершает работу с программой. Я пытаюсь вызвать нажатие этой кнопки на 2-й и 3-й вкладках с помощью

 btnExit.PerformClick(); 
  

но поскольку она не видна, ничего не происходит. Как бы я вызвал щелчок невидимой кнопки?

буду признателен за любую помощь

РЕДАКТИРОВАТЬ: Спасибо за ответы, два ответа отлично работают, но я нашел способ, который, на мой взгляд, проще и лучше.

вместо систематического изменения вкладок или вызова совершенно другого метода, я сделал это

 btnExit_Click(sender, e);
  

Я могу поместить это в любое другое нажатие кнопки, и это отлично работает, очень просто.

Ответ №1:

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

 void ExitApplication()
{
   // code to exit the application
}

protected void btnExit_Click(object sender, EventArgs e)
{
   ExitApplication();
}
protected void ButtonInOtherTab_Click(object sender, EventArgs e)
{
   ExitApplication();
}
  

Таким образом, это легче читать и понимать.

Комментарии:

1. да, это было бы немного проще, если бы я просто хотел, чтобы она вышла из приложения. Но есть другой код, который запускается, когда я нажимаю начальную кнопку выхода, например, сохранение введенного текста и тому подобное. Было бы намного проще вызвать кнопку, а затем исправить код для каждой кнопки.

2. но я думаю, я мог бы также поместить этот код в метод ExitApplication(). Спасибо, я могу это сделать.

Ответ №2:

 myTabs.SelectedTab = specificTab;
btnExit.PerformClick(); 
  

Комментарии:

1. Отредактировал фрагмент. Сначала активируйте вкладку, затем выполните click. После этого вы можете вернуться к начальной вкладке.

2. на какой бы вкладке ни находилась эта кнопка.