[英]Change Button's image appearance when enabled
目前,我在WPF中有按钮,但是我希望它们在禁用时显得更亮,而在启用时则变成全彩色。 是否可以选择使图像自动变亮,或者我需要在inkscape中对其进行编辑并导入为完全不同的图像,并在ViewModel中更改图像Source
。
其中一个按钮当前正在使用的代码:
<Button Visibility="{Binding SettingsButtonIsEnabled}" Command="{Binding OnSaveProject}" VerticalAlignment="Top" ToolTip="{DynamicResource SaveProject}">
<Image RenderOptions.BitmapScalingMode="HighQuality" Source="/Axon.Oscillographic.Viewer;component/Icons/save.png"/>
</Button>
一种可能的解决方案是在禁用按钮时降低图像的Opacity
。 这可以通过使用DataTrigger的样式来完成:
<Image RenderOptions.BitmapScalingMode="HighQuality" Source="/Axon.Oscillographic.Viewer;component/Icons/save.png">
<Image.Style>
<Style TargetType="Image">
<Style.Triggers>
<DataTrigger Binding="{Binding IsEnabled, RelativeSource={RelativeSource AncestorType=Button}}"
Value="False">
<Setter Property="Opacity" Value="0.75"/>
</DataTrigger>
</Style.Triggers>
</Style>
</Image.Style>
</Image>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.