メニューに配置されている場合、ラジオボタンのデフォルトのスタイルをオーバーライドする方法はありますか? しかし、それがウィンドウにある場合は、これまでと同じように見えるはずです. ただし、x:key は使用しません。これは自動的に検出されるはずです。
2 に答える
0
2 つの解決策があります。
x:Key でスタイルを作成しますが、それを Menu.Resources に配置します。これにより、メニュー項目にのみ適用されます。
ItemsControls (メニューは 1 つ) にはItemContainerStyleSelectorというプロパティがあります。独自のStyleSelectorを作成し、コンテナーの種類に応じてスタイルを設定できます。
于 2012-08-09T11:18:31.660 に答える
0
あなたが方法を知っていれば、それは非常に簡単です:)
<style TargetType="{x:Type Menu}">
<Setter Property="Template>
<Setter.Value>
<ControlTemplate TargetType="{x:Type Menu}">
<ControlTemplate.Resources>
<Style Targettype="{x:Type Radiobutton}>
</Style>
</ControlTemplate>
<StackPanel IsItemsHost="True" Width="{TemplateBinding Width}" Height= {TemplateBinding Height} />
</Setter.Value>
</Setter>
</style>
キーワードの書き込みを制御する必要があります。Visual Studio ではなく、そのように記述するためです。リソースを設定する他の方法が見つからなかったため、メニュー標準をスタックパネルでオーバーライドします。簡単ですが、Varius からの回答がなければ、これは見つかりませんでした。MenuItem についても同じことを行う必要があります。
同じ問題を抱えている他の人々に役立つかもしれないと思うので、これを投稿します。私は長い間検索しましたが、何も見つかりませんでした。
于 2012-08-09T18:01:12.487 に答える