我有一个 WPF 应用程序,其中包含一个由一列按钮组成的 Datagrid。相应的 XAML 代码如下。
<DataGridTemplateColumn Header="Closed" Width="60">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Button>
<Button.Content>
<Image>
<Image.Source>
<MultiBinding Converter="{StaticResource ImageConverter}"
ConverterParameter="Closed">
<Binding Path="IsClosed"/>
<Binding Path="DataContext.TickImage" RelativeSource="{RelativeSource AncestorType={x:Type UserControl}}"/>
<Binding Path="DataContext.CrossImage" RelativeSource="{RelativeSource AncestorType={x:Type UserControl}}"/>
</MultiBinding>
</Image.Source>
</Image>
</Button.Content>
<Button.Command>
<Binding Path="DataContext.ClosedClicked" RelativeSource="{RelativeSource FindAncestor, AncestorType={x:Type UserControl}}"/>
</Button.Command>
</Button>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
TickImage和CrossImage是基于 的值选择的图像源IsClosed。现在在 ViewModel 中,我需要编写一个代码来在单击按钮时切换图像(黑白TickImage和)。CrossImage换句话说,我需要一种同时将 Button 与一个ICommand和一个BitmapImage变量绑定的方法。
请帮忙!!