どのように継承するために/リソースディクショナリからスタイルを拡張しますか?
-
26-09-2019 - |
質問
私はトラブル拡張私は、Windowsの辞書に定義されているというのが私のスタイルのいずれかを持っています。一人で、予想通り、私のコントロールにスタイルを適用するようです。試みはBASEDONプロパティを使用して、私のユーザーコントロールの一つでスタイルを拡張する場合は、それは単に、メイン1を上書きし、すべての基本スタイルが消えます。ここでは例があります:
リソースディクショナリには、名前のdict1.xamlます:
<Style TargetType="{x:Type Button}">
<Setter Property="Background" Value="Pink"/>
</Style>
メインwindow.xamlで
<Window.Resources>
<ResourceDictionary Source="dict1.xaml"/>
</Window.Resources>
ユーザーコントロールで呼ばuserControl1.xamlます:
<UserControl.Resources>
<Style BasedOn="{StaticResource {x:Type Button}}"
TargetType="{x:Type Button}">
<Setter Property="FontWeight" Value="Bold"/>
</Style>
</UserControl.Resources>
は、ユーザーコントロールのスタイルは、単にリソースディクショナリに1を上書きし、フォントが太字です。私は辞書キックで、ユーザーコントロールにスタイルをスタイルを削除し、背景がピンクになった場合。私は両方欲しいです。
私はここで間違ってやって任意のアイデア?
感謝ます。
解決
あなたのいずれかが必要ユーザーコントロールのリソースに辞書を追加、またはApp.XAMLリソースに追加します。
それがあるとして、ユーザーコントロールは解決できないことStaticResource - 。それは理にかなっている場合には、ユーザーコントロールの範囲ではなく、ウィンドウ内にある
所属していません StackOverflow