刚
我引用了16299版本。
我尝试为ContentDialog设置样式,为PrimaryButton设置样式。但是,我不能让他们两个一起工作:
<ContentDialog x:Class="App1.ContentDialog1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
PrimaryButtonText="Button1"
SecondaryButtonText="Button2"
Style="{StaticResource ContentDialogStyle}"
PrimaryButtonStyle="{StaticResource ContentDialogPrimaryButtonStyle}">
<Grid />
</ContentDialog>
这只适用于&#34; Style&#34;而不是&#34; PrimaryButtonStyle&#34;。但是,如果我删除&#34; Style&#34;属性,然后我应用了PrimaryButtonStyle。
我尝试在Style XAML中应用PimaryButtonStyle,但这不起作用:
<Style TargetType="Button" x:Key="ContentDialogPrimaryButtonStyle">
<Setter Property="Template">
<Setter.Value>
...
</Setter.Value>
</Setter>
</Style>
<Style TargetType="ContentDialog" x:Key="ContentDialogStyle">
<Setter Property="PrimaryButtonStyle" Value="{StaticResource ContentDialogPrimaryButtonStyle}" />
<Setter Property="Template">
<Setter.Value>
...
</Setter.Value>
</Setter>
</Style>
我是如何设置ContentDialog中主要/辅助按钮的样式,它本身有一个样式?
亲切的问候
亚当
答案 0 :(得分:2)
它应该与Template
中的ContentDialogStyle
相关联。我们可以在xaml中更改ContentDialogStyle
和PrimaryButtonStyle
,这是一个简单的示例,您可以看到它。然后,您应该查看Template
中的ContentDialogStyle
。
这是代码,
<Style TargetType="Button" x:Key="ContentDialogPrimaryButtonStyle">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate>
<Border BorderBrush="Green" BorderThickness="5">
<ContentPresenter Background="Red" />
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style TargetType="ContentDialog" x:Key="ContentDialogStyle">
<Setter Property="Background" Value="Yellow"/>
</Style>
这是ContentDialog,
<ContentDialog
...
PrimaryButtonText="Button1"
SecondaryButtonText="Button2"
Style="{StaticResource ContentDialogStyle}"
PrimaryButtonStyle="{StaticResource ContentDialogPrimaryButtonStyle}">
<Grid/>
</ContentDialog>