Какой макет использовать для определения пользовательского интерфейса в компонентах wpf? - PullRequest
0 голосов
/ 22 января 2019

Я изучаю wpf.В рамках обучения я конвертирую приложение winforms в приложение wpf, используя mvvm.

В winforms я просто перетаскивал.После этого я выровнял в соответствии с моим требованием.

Но в WPF, когда я перетаскиваю, сетка по умолчанию оборачивает компоненты, и я сталкиваюсь с большими трудностями при выравнивании компонентов.

При обученииучебники по wpf https://www.tutorialspoint.com/wpf/wpf_layouts.htm

Я пытался работать, но я не знаю, какой подходит для моего пользовательского интерфейса.

Я хочу создать пользовательский интерфейс в wpf, как показано ниже winform enter image description here

Я использовал сетку и панель стека, но у меня возникли проблемы с выравниванием.В сетке у меня проблема с добавлением новых элементов в существующую строку.В стековой панели я сталкиваюсь с проблемой, связанной с расстоянием между компонентами и выравниванием компонента.

Может ли кто-нибудь помочь мне с тем, какую панель использовать для вышеуказанного интерфейса.

1 Ответ

0 голосов
/ 22 января 2019

Как правило, вы не используете редакторы для WPF, вы редактируете макет XAML вручную и используете визуализатор как руководство, чтобы показать, правильно ли вы это сделали. Редактор Visual Studio позволяет вам делать такие вещи, как базовый макет, но как только вы начнете использовать ControlTemplates / DataTemplates / Behaviors и т. Д., Вы быстро обнаружите, что он бесполезен (и поверьте мне, этот момент наступит гораздо раньше, чем вы думаете). Если вы действительно хотите использовать графический редактор, то Microsoft Blend - ваш лучший выбор, но даже он обычно предназначен для непрограммистов. Фактически, за 10 с лишним лет я был профессиональным подрядчиком WPF, и мне еще не приходилось сталкиваться с одной компанией, которая на самом деле использует Blend ... или вообще любой другой XAML-редактор с графическим интерфейсом ... для разработки своего продукта.

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