Как получить динамически созданный пользовательский элемент управления для отображения? - PullRequest
1 голос
/ 10 июля 2019

У меня есть пользовательский элемент управления с именем home, местоположение которого уже установлено.Когда я динамически создаю его ниже, я не вижу его.Я попытался установить свойство видимым, используя метод show и метод "front", но ничего.Чего мне не хватает?

namespace TipManager {
     static class Program
     {
         /// <summary>
         /// The main entry point for the application.
         /// </summary>
         [STAThread]
         static void Main()
         {
             Application.EnableVisualStyles();
             Application.SetCompatibleTextRenderingDefault(false);
             form = new Form1();
             Application.Run(form);

             TipManagerModel tipManager = new TipManagerModel();
             TipManagerServices services = new TipManagerServices(tipManager);

             Home homeView = new Home();
             HomePresenter homePresenter = new HomePresenter(homeView, tipManager, services);

             form.Controls.Add(homeView);
             homeView.BringToFront();
         }
         static Form1 form;
     } }

1 Ответ

1 голос
/ 10 июля 2019

Форма вызывается перед добавлением элемента управления, переместите Application.Run(form); в конец функции.Кстати, я бы настоятельно рекомендовал делать это в конструкторе формы после InitializeComponents();, а не делать это здесь.

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