20

アセンブリ A - ResourceDictionary には StyleA スタイルが含まれています。
アセンブリ B - アセンブリ A のリソースを B にマージするための ResourceDictionary.MergedDictionaries。

「StyleA」に基づいて「Assembly B」でスタイルを作成したいと思います。出来ますか?

私はこのスタイルを作成しようとしています:

<Style x:Key="StyleB" BasedOn="{StaticResource StyleA}">
   <Setter Property="Button.Foreground" Value="Khaki"/>
</Style>

しかし、StyleB を使用すると、実行時に XamlParseException 例外が発生します。

属性 'Style' の値をタイプ 'System.Windows.Style' のオブジェクトに変換できません。基本型 'IFrameworkInputElement' であるターゲット型を持つスタイルのみに基づくことができます。マークアップ ファイル 'SamSeekApp;component/mainwindow.xaml' のオブジェクト 'System.Windows.Controls.Button' でのエラー

4

1 に答える 1

41

「StyleB」に TargetType="{x:Type Button}" を追加してみてください。

于 2009-04-01T00:08:08.517 に答える