2011-11-13 8 views
9

x:スタイルのKey&TargetType

Style x:Key="{x:Type DataGridCell}" TargetType="{x:Type DataGridCell}" 
x:Key属性を省略した場合の違いは何ですか?

WPFが同じx:Typeにキーを割り当てていると思います。

答えて

24

Style.TargetTypeのためのMSDNドキュメントは、あなたの疑惑を確認します。xを設定せずにTextBlockのタイプにTargetTypeプロパティを設定する

:{:タイプのTextBlockのx}にキー:キーは、暗黙的にXを設定します。これは、上記のスタイルに{x:Type TextBlock}以外のx:Key値を指定した場合、そのスタイルはすべてのTextBlockエレメントに自動的に適用されないことを意味します。代わりに、TextBlock要素にスタイルを明示的に適用する必要があります。

スタイルのリソースディクショナリキーがタイプの場合、そのスタイルは明示的にスタイルを指定しないすべてのインスタンスのデフォルトスタイルとして使用されます。ターゲットタイプは通常提供されるので、キーを省略する構文は単純にデフォルトスタイルを定義するためのショートカットです。

+0

ok、ちょうど私はこれをいくつかの良い例で見ましたが、これが助けになりました。ありがとうリック – Manuel

+8

@Manuel:この答えがあなたを助けたら、どうしてあなたは**よりそれを受け入れるのですか! –

+0

SOは受諾投票を必要とします。 – C4u

関連する問題