создание хорошего GUI в WPF

Я должен создать настольное приложение CAD, которое по существу должно иметь хороший современный GUI. Я думаю о создавании приложения WPF так, чтобы у меня мог быть богатый пользовательский интерфейс. Кто-то мог предложить меня хорошо разработанное настольное приложение платформа GUI в WPF? Я нашел некоторый классный GUI в этом видео http://channel9.msdn.com/posts/Psychlist1972/Pete-at-PDC09-WPF-3d-Awesomeness-with-Tor-and-Robby/, но не уверенным в средствах управления, которые они использовали в их приложении. У кого-либо есть идея, какие средства управления они использовали там?

Есть ли в WPF какое-либо управление сеткой свойства? Я пытался использовать сетку в Windows Forms. Настройка этой сетки для удовлетворения моему требованию, кажется, является трудной. Это показывает все свойства объекта прямо от очень базового класса до наиболее полученного.

6
задан Robert Harvey 13 September 2017 в 20:15
поделиться

2 ответа

С WPF, многое возможно. Вы найдете широкий спектр внешний вид на различные приложения из-за того, что, в отличие от форм Windows, WPF может быть шаблон и стилься, как HTML. Фактические дизайнеры могут легко посмотреть и чувствовать, что очень трудно выполнить в формах Windows. Естественно, поскольку оно настолько гибко, внешний вид приложений очень введенных в систему будет отлично варьироваться от применения к применению.

, которые сказали, что есть очень хорошие 3-я сторонние контроль. Все обычные подозреваемые есть библиотеки управления для WPF: Teleerik , , инфрагистик , , компонент , Actipro , devxpress назвать несколько. В частности, Свойство Actipro состоит из недвижимости очень приятно. Существует также One One , которому я не оценил, поэтому не могу говорить. WPF также может быть «теми», применяя предварительно скомпилированные стили для контроля. Здесь есть пример темы: http://wpfthemes.codeplex.com/ .

Наконец, сильные стороны WPF не полностью реализуются до тех пор, пока вы не узнаете, как отделить представление, которая вытягивается и управляется WPF и логической абстракцией вида, называемой моделью View. Джош Смит имеет отличную статью об этом шаблоне, известный как модуль-вид-просмотр, здесь: http://msdn.microsoft.com/en-us/magazine/dd419663.aspx .

9
ответ дан 8 December 2019 в 17:21
поделиться

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

Чтобы создать свой собственный PropertyGrid, просто используйте с помощью , который имеет , содержащий < TextBlock> Состыдно влево для имени свойства и для редактора стоимости, а затем включить группировку в категории .

Единственный код, который вам нужен для записи код, который отражает на объекте и создает список свойств.

Вот грубая идея о том, что вы будете использовать:

DataContext =
  from pi in object.GetType().GetProperties()
  select new PropertyGridRow
  {
    Name = pi.Name,

    Category = (
      from attrib in pi.GetCustomAttributes(false).OfType<CategoryAttribute>()
      select attrib.Category
    ).FirstOrDefault() ?? "None",

    Description = (
      from attrib in pi.GetCustomAttributes(false).OfType<DescriptionAttribute>()
      select attrib.Description
    ).FirstOrDefault(),

    Editor = CreateEditor(pi),

    Object = object,
  };

Метод CreateDitor просто построит соответствующий редактор для свойства с помощью привязки к фактическому значению свойства.

В XAML, было бы чем-то вроде этого:

<DataTemplate>
  <DockPanel>
    <TextBlock Text="{Binding PropertyName}" Width="200" />
    <ContentPresenter DataContext="{Binding Object}" Content="{Binding Editor}" />
  </DockPanel>
</DataTemplate>

Я позволю вам заполнить остальные детали.

5
ответ дан 8 December 2019 в 17:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: