Выключатель элементы управления UserControl в mainform внутри пользовательского элемента управления щелкните событие - winform
Это может показаться глупым, но мне трудно понять это; любая помощь будет оценена по достоинству:
У меня есть два пользовательских элемента управления под названием “Safety_Check” и “OEE_Track”... В моем Основная форма У меня есть группа под названием “pnl_main_controller” здесь я показываю оба моих пользовательских элемента управления. У меня есть две кнопки на моей основной форме, и я динамически переключаюсь между ними без каких-либо проблем.
Safety_Check пользовательский контроль;
public partial class Safety_Check : UserControl { private static Safety_Check _instance; public static Safety_Check instance { get { if (_instance == null) _instance = new Safety_Check(); return _instance; } } public Safety_Check() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { ///////------------------------ } } OEE_Track User control public partial class OEE_Track : UserControl { private static OEE_Track _instance; public static OEE_Track instance { get { if (_instance == null) _instance = new OEE_Track(); return _instance; } } public OEE_Track() { InitializeComponent(); } } MainForm: public partial class MainForm : Form { private void btn_reg_Click(object sender, EventArgs e) { if (!pnl_main_controller.Contains(Safety_Check.instance)) { pnl_main_controller.Controls.Add(Safety_Check.instance); Safety_Check.instance.Dock = DockStyle.Fill; Safety_Check.instance.BringToFront(); } else { Safety_Check.instance.BringToFront(); } } private void btn_OEE_Click(object sender, EventArgs e) { if (!pnl_main_controller.Contains(OEE_Track.instance)) { pnl_main_controller.Controls.Add(OEE_Track.instance); OEE_Track.instance.Dock = DockStyle.Fill; OEE_Track.instance.BringToFront(); } else { OEE_Track.instance.BringToFront(); } }
То, что я пытаюсь сделать, это у меня есть кнопка под названием “Кнопка button1” на моем “проверка безопасности” Usercontrol, всякий раз, когда я нажимаю на это , я хочу “проверка безопасности” чтобы исчезнуть дальше “pnl_main_controller- и принеси “OEE_Track- на панель
Что я уже пробовал:
if (!main.pnl_main_controller.Contains(Safety_Check.instance)) { Safety_Check.instance.Hide(); main.pnl_main_controller.Controls.Add(OEE_Track.instance); OEE_Track.instance.Dock = DockStyle.Fill; OEE_Track.instance.BringToFront(); } else { OEE_Track.instance.BringToFront(); }
BillWoodruff
Рассматривали ли вы простое решение использования TabControl ?