Что такое эквивалент wxWidgets пользовательского элемента управления C # - PullRequest
1 голос
/ 13 августа 2010

В настоящее время я проектирую миграцию моего существующего проекта .NET / C # / WinForms на платформенно-нейтральное решение, и наиболее привлекательной альтернативой, которую я видел, кажется, является wxWidgets, особенно с учетом моего знакомства с C ++ и с MFC, который иметь с ним много общего.

После ознакомления с документацией и примером кода мне нужно прояснить следующую проблему:

Допустимо ли, что способ разработки пользовательского элемента управления (по терминологии C #) в среде wx - это извлечь класс из wxPanel, настроить его и поместить в wxFrame? Если это так, то какой метод wxFrame будет использоваться для добавления к нему объекта wxPanel?

Единственным относительным методом, который мне удалось найти, был wxWindow :: AddChild, но в документации говорится, что он в основном является внутренним по отношению к wxWidgets и не должен вызываться кодом пользователя.

Во избежание недоразумений, обратите внимание, что мой вопрос касается пользовательского элемента управления, а не пользовательского элемента управления (что четко указано в документации)

1 Ответ

2 голосов
/ 13 августа 2010

Я думаю, вам нужно установить родительское окно в конструкторе вашего wxPanel -приобретенного класса и передать его унаследованному конструктору (ср. wxPanel constructor )

Тем не менее, лучшим решением является использование размеров (см. WX Sizers ) для макета.

И да, по-моему, вы правы в том, что wxPanel является (примерно) эквивалентом C # UserControl.

...