Немного подумав и благодаря совету Сергея Шевченко, мне удалось создать то, что похоже на то, что я хотел.
Создание UserControl или просто другой формы не большая разница. Поэтому я попробовал оба способа.
Итак, я создал еще одну форму (или UserControl - тоже самое) с именем "my_controls_form.h" с несколькими элементами управления. И главное - сделать эти элементы управления общедоступными , чтобы вы могли получить к ним доступ из другой формы.
Когда дизайнер создает их, он устанавливает по умолчанию так:
private: System::Windows::Forms::Button^ my_button_btn;
private: System::Windows::Forms::Label^ my_label_lbl;
Поэтому я изменил private на public , включил этот новый заголовок формы в основную форму .cpp (#include "my_controls_form.h"
), а затем просто добавил их в основную форму, например так:
my_controls_form ^frm = gcnew my_controls_form;
Button ^btn = frm->my_button_btn;
Label ^lbl = frm->my_label_lbl;
btn->Name = "__my_button";
btn->Location = Point(0,70);
lbl->Name = "__my_lalbel";
lbl->Location = Point(70,70);
this->Controls->Add(btn);
this->Controls->Add(lbl);
Тем не менее у меня есть некоторые сомнения по этому поводу. Например, все методы для этих элементов управления записаны в другом классе (форме).
И есть проблема вставки элемента управления несколько раз ... Есть идеи, как вставить несколько идентичных элементов управления ?
Что еще может пойти не так ?