WPF: Мастер / Детальная ситуация - PullRequest
2 голосов
/ 20 апреля 2010

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

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

Какой шаблон лучше всего подходит для WPF?

Я новичок в WPF, и я потратил некоторое время на то, чтобы двигаться в некоторых явно неправильных направлениях. Спасибо!

1 Ответ

3 голосов
/ 20 апреля 2010

Я бы сказал, когда это возможно Шаблоны - это путь в WPF. Они определяют, как элементы управления или данные отображаются в пользовательском интерфейсе. Используя шаблоны, можно использовать любой объект (не только строки), например, в качестве содержимого кнопки. Если вы устанавливаете содержимое Button как объект типа MyType, WPF будет искать в ресурсах шаблон данных для MyType и использовать его, если он найден. Если DataTemplate не найден, он будет использовать метод ToString() этого объекта и отобразит результат.

В вашем сценарии вы можете использовать простой ContentControl для просмотра подробностей справа и определять различные DataTemplate s для каждого типа элемента. Если не каждому элементу нужен свой шаблон (то есть некоторые типы используют один и тот же шаблон), вы можете реализовать ContentTemplateSelector, чтобы определить правильный DataTemplate программным путем.

Обзор шаблонов дает хорошее введение в эту тему.

HTH, удачи!

...