WPF - создание сплошного макета без дизайнера - PullRequest
0 голосов
/ 14 декабря 2018

Я слепой и хотел бы использовать WPF, так как он более доступен во многих отношениях.Однако дизайнер, используемый для размещения элементов на экране, недоступен.
В Winforms я использовал атрибуты размера и местоположения каждого элемента управления, чтобы расположить их так, чтобы они не перекрывались на экране.Это было связано с логикой, а не со зрением, поэтому все прошло довольно хорошо.
В WPF все немного по-другому.Я знаю, что есть несколько контейнеров макетов, таких как Dockpanel, Stackpanel и т. Д. Однако я не уверен, будут ли они препятствовать перекрытию элементов управления.
Итак, мой вопрос: если вы не могли видеть, как бы вы устроили элементы управления, чтобы они не перекрывались?Какие элементы управления макетом вы бы использовали?

Ответы [ 2 ]

0 голосов
/ 14 декабря 2018

Да, они не позволят органам управления перекрываться.Это на самом деле является преимуществом WPF: его контейнеры размещают элементы управления относительно друг друга и других элементов управления, чтобы они не перекрывались и не изменяли размеры и не перемещались при изменении размеров окна.Если размер элемента управления превысит размер контейнера, часть элемента управления будет скрыта, не перекрывая его соседей.Это относится к любому контейнеру, кроме холста, где элементы размещаются по абсолютным координатам.

0 голосов
/ 14 декабря 2018

Самый простой способ разместить элементы управления в WPF без их наложения - это использовать <Grid.RowDefinitions> и <Grid.ColumnDefinitions>.Вы можете определить свою ширину и высоту с фиксированными или относительными значениями (используя '*').Для хорошего и простого объяснения я могу предложить следующие два сайта:

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

...