#wpf #silverlight #xaml #targettype
#wpf #silverlight #xaml #тип цели
Вопрос:
Есть ли какая-либо разница (или преимущество) в использовании этого оператора:
Style x:Key="{x:Type DataGridCell}" TargetType="{x:Type DataGridCell}"
с пропуском x:Key
атрибута?
Я думаю, что WPF присваивает ключ тому же x:Type
, что и под капотом.
Ответ №1:
Документация MSDN для Style.TargetType
подтверждает ваши подозрения:
Установка свойства TargetType в тип TextBlock без установки x:Key неявно устанавливает x:Key в {x:Type TextBlock}. Это также означает, что если вы присвоите вышеуказанному стилю значение x:Key, отличное от {x:Type TextBlock}, стиль не будет применяться ко всем элементам TextBlock автоматически. Вместо этого вам нужно явно применить стиль к элементам TextBlock.
Если ключом словаря ресурсов стиля является тип, этот стиль используется в качестве стиля по умолчанию для всех экземпляров этого типа, которые явно не указывают стиль. Поскольку целевой тип обычно предоставляется, синтаксис исключения ключа — это просто ярлык для определения стиля по умолчанию.
Комментарии:
1. хорошо, просто я видел это в нескольких хороших примерах, и это помогло, спасибо Рик
2. @Manuel: Если этот ответ помог вам, почему бы вам не принять его !