我创建了一个具有 3 种状态(正常、单击、禁用)的自定义 WPF 按钮。对于每个州,我都有不同的形象。我在项目的不同位置使用这个通用按钮,每次我使用 .CS 文件中的属性加载不同的图像时。
<Button.Resources>
<ImageSource x:Key="Normal">..\Resources\DefaultNormal.png</ImageSource>
<ImageSource x:Key="Disabled">..\Resources\DefaultDisabled.png</ImageSource>
<ImageSource x:Key="Pressed">..\Resources\DefaultPressed.png</ImageSource>
</Button.Resources>
<Button.Template>
<ControlTemplate TargetType="{x:Type Button}">
<Grid>
<Image Name="normal" Source="{DynamicResource Normal}" Stretch="Fill"/>
<Image Name="pressed" Source="{DynamicResource Pressed}" Stretch="Fill" Visibility="Hidden"/>
<Image Name="disabled" Source="{DynamicResource Disabled}" Stretch="Fill" Visibility="Hidden"/>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsPressed" Value="True">
<Setter TargetName="normal" Property="Visibility" Value="Hidden"/>
<Setter TargetName="pressed" Property="Visibility" Value="Visible"/>
</Trigger>
<Trigger Property="IsEnabled" Value="False">
<Setter TargetName="normal" Property="Visibility" Value="Hidden"/>
<Setter TargetName="disabled" Property="Visibility" Value="Visible"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Button.Template>
现在我想对按钮的文本/内容做同样的事情,但我找不到类似于ImageSource
文本的东西。有类似的东西吗?还是有不同的方法来动态更改文本?