Есть ли другой правильный способ иметь одинаковый элемент управления на двух разных вкладках в форме C#? - PullRequest
0 голосов
/ 29 мая 2020

Вот то, что я пробовал и работает. Но я хочу знать, правильно ли это, или есть лучший вариант или способ сделать то же самое

private void tabs_SelectedIndexChanged(object sender, EventArgs e)
{
    TabControl control = (TabControl)sender;
    if(control.SelectedIndex == 3  || control.SelectedIndex == 0)
    {
        button1.Parent = control.SelectedTab;
        zonalarealabel.Parent = control.SelectedTab;
        pictureBox3.Parent = control.SelectedTab;

    }
}

1 Ответ

0 голосов
/ 29 мая 2020

Если вы не против привязать свой код к пользовательскому интерфейсу, тогда ваш подход допустим. Однако я думаю, что лучший вариант - создать пользовательский элемент управления, который вызывает события, обрабатываемые выбранной вкладкой. Пользовательский элемент управления всегда будет отображаться на вкладках 0 и 3. Преимущество этого заключается в том, что вам не нужно изменять обработчик событий SelectedIndexChanged, если вы хотите, чтобы эти кнопки отображались на будущей вкладке. Есть много способов решить эту проблему, но, учитывая очень узкие функциональные требования, которые вы разделили, лучше передать эти кнопки пользовательскому элементу управления, а не переназначать их во время выполнения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...