Я в настоящее время разрабатываю миграцию своей существующей.NET / C# / проект WinForms к независимому от платформы решению и самой привлекательной альтернативе, которую я видел, кажется, wxWidgets, особенно берущий в соображении мое знакомство с C++ и с MFC, который, кажется, имеет много общего с ним.
После движения, хотя документация и пример кода я должен разъяснить следующую проблему:
Действительно ли это - допустимое предположение, что способ разработать Пользовательский элемент управления (терминологией C#) в wx среде состоит в том, чтобы получить класс из wxPanel, настроить его и поместить его в wxFrame? Если это верно, что wxFrame метод должен использоваться для добавления объекта wxPanel к нему?
Единственный относительный метод, который я смог найти, был wxWindow:: AddChild, но состояния документации, который является главным образом внутренним к wxWidgets и не должен быть назван пользовательским кодом.
Для предотвращения беспорядка обратите внимание на то, что, мой вопрос о Пользовательском элементе управления и не Пользовательском элементе управления (который ясно обращен в документации),
Я думаю, вам нужно установить родительское окно в конструкторе вашего wxPanel
класса и передать его унаследованному конструктору (см. конструктор wxPanel )
A тем не менее, лучшее решение - использовать измерители размеров (см. wx Sizers ) для компоновки.
И да, я думаю, вы правы насчет wxPanel
, являющегося (примерно) эквивалентом C # UserControl
.