Разница между шаблоном управления и шаблоном данных в wpf - PullRequest
3 голосов
/ 28 апреля 2010

Может кто-нибудь уточнить разницу между ControlTemplate и DataTemplate в wpf?

Что следует использовать в случае пользовательских элементов управления? Как например StackPanel, который возможно имеет image и TextBox?

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

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

1 Ответ

8 голосов
/ 28 апреля 2010

A ControlTemplate используется для изменения внешнего вида существующего элемента управления. Поэтому, если вы не хотите, чтобы ваши кнопки выглядели прямоугольными, вы можете определить шаблон элемента управления, который будет делать их овальными или любой неправильной формы. Это способ настроить стандартные элементы управления WPF «без наглядности»; альтернатива написанию собственных пользовательских элементов управления. Подробнее

A DataTemplate используется для указания способа визуального отображения экземпляра определенного класса (обычно объекта передачи данных - объекта со свойствами). например определите DataTemplate для визуализации экземпляра Customer в списке, отображающем всех клиентов. Подробнее

...