HTML-макет для winforms - PullRequest
       20

HTML-макет для winforms

2 голосов
/ 08 сентября 2008

Вместо того, чтобы упорядочивать элементы управления в форме winform путем указания местоположения в пикселях, я хотел бы выложить его аналогично тому, как вы расположите форму в html. Это улучшит масштаб (для больших шрифтов и т. Д.).

Кто-нибудь знает библиотеку макетов, которая позволяет определять форму в xml и размещать ее аналогично html?

Ответы [ 6 ]

4 голосов
/ 08 сентября 2008

Вы проверяли TableLayoutPanel и FlowLayoutPanel в .NET Framework? Это может быть то, что вы ищете.

3 голосов
/ 08 сентября 2008

Да, это называется WPF:)

Серьезно, в WinForms 2.0 есть несколько новых типов панелей, которые позволят вам размещать элементы управления без установки Location и Size. Это FlowLayoutPanel и TableLayoutPanel.

Вам также следует обратиться к свойству AutoSize. Он заботится о размерах, когда, например, изменяется значение метки. Также не забывайте о стыковке и закреплении.

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

2 голосов
/ 08 сентября 2008

Не уверен, что для этого есть что-то идеальное.

Несколько лет назад MyXAML начал работать, что позволило вам добавлять формы в XML, а не встраивать их в двоичный файл. Не уверен, что этот проект мертв или нет.

WinForm уже имеет элемент управления макетом потока

Однако, если вы хотите сделать что-то подобное, я думаю, что единственный ответ - перейти на WPF.

0 голосов
/ 11 декабря 2008

Единственный, кого я знаю, это сторонний разработчик DevExpress, который называется LayoutControl ..

0 голосов
/ 09 сентября 2008

У меня уже есть что-то вроде MyXAML - мои экраны уже загружены из XML-файлов. Он страдает той же проблемой, что и MyXAML, которая заключается в том, что вам все еще нужно позиционировать элементы управления с позициями пикселей, в то время как я хочу что-то вроде html с автоматическим потоком, таблицами и тому подобным.

Я думаю, что TableLayoutPanel может быть тем, что я ищу.

0 голосов
/ 08 сентября 2008

Вы также можете рассмотреть возможность использования Windows Presentation Foundation (WPF) вместо WinForms - в WPF есть язык декларативной разметки XML (XAML), который хорошо подходит для определения масштабируемого пользовательского интерфейса.

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