7

特定の条件が発生したときに、プログラムでボタンにフラット スタイルを適用したいと考えています。

この質問は、XAML で既に定義されているスタイルをプログラムでコントロールに設定する方法を示しています。

この質問は、フラット ボタン スタイルが既に存在することを示しているため、XAML で作成する必要はありません。

ToolBar.ButtonStyleKeyを返し、ResourceKey対応するスタイルがウィンドウで定義されていません (ツールバーにあります)。コードでスタイルをプログラムで設定するにはどうすればよいですか?

4

2 に答える 2

8

これは有効な回避策です。次のようにに基づいてスタイルを追加ToolBar.ButtonStyleKeyWindow.Resourcesます。

<Window.Resources>
    <Style x:Key="MyStyle" BasedOn="{StaticResource {x:Static ToolBar.ButtonStyleKey}}" TargetType="Button" />
</Window.Resources>

次に、コードで、この質問の最初のリンクに従って参照します。

button.Style = this.Resources["MyStyle"] as Style;

これにはコードのみのソリューション (XAML なし) が必要ですが、これも同様に機能します。

于 2013-09-08T10:30:51.557 に答える