1

多くの FrameworkElements (TextBlock、CheckBox、ListBox ..) があり、すべてのコントロールに加えて少数を表示できるようにしたいと考えています。

いくつかのテキスト ³

MarkupExtension を作成するというアイデアが思い浮かびました。ここでは、その番号を次のように記述できます。

..
<TextBlock Text="Some Text" SomeExtension="3" />
..

そして、それを何らかの方法でコントロールのテンプレートに追加します。

しかし、皆さんにはこの問題に対するより良い解決策があると確信しています;)

4

2 に答える 2

3

それを使用する 1 つの方法は、Attached Property. コントロールに設定すると、指定された番号を表示するそのコントロールにカスタムAdornerが追加されます。

于 2011-02-17T12:44:03.260 に答える
0

タグプロパティを使用して、必要な数を指定し、カスタムテンプレート内でプロパティにデータバインドします

<TextBlock Text="Some Text" Tag="3" />

コントロールテンプレート内

<TextBlock Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Tag}"/>
于 2011-02-17T12:46:08.717 に答える