【发布时间】:2017-06-23 23:46:25
【问题描述】:
我有一个包含一些项目的列表视图。我还有两个按钮,添加和删除。我已经实现了拖放功能,以便将单个 listviewitem 从 listview 拖到删除按钮,然后在删除按钮拖放时,删除 listview 项目。
当 listview 项目从 listview 拖动到删除按钮并且鼠标悬停在按钮上时(在拖放操作期间以及在按钮上放置之前)我想更改按钮图像。如果我在 IsMouseOver 属性上的按钮上创建数据触发器,它就可以工作,但我只想在拖放操作期间(在拖放之前)鼠标悬停在删除按钮上时更改按钮图像。我该怎么做?
<Button AllowDrop="True" Drop="btnDrop_Drop" Height="64" Width="64" Margin="10" Click="Button_Click_Delete" Content="Delete">
<Button.Template>
<ControlTemplate>
<StackPanel>
<Image x:Name="image1" Visibility="Visible" Height="36" Width="36" Stretch="UniformToFill" Source="Resources/icons8-Trash Can-48.png"/>
<Image x:Name="image2" Visibility="Collapsed" Height="36" Width="36" Stretch="UniformToFill" Source="Resources/icons8-Trash Can-48-3.png"/>
<Label HorizontalAlignment="Center">Delete</Label>
</StackPanel>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter TargetName="image1" Property="Visibility" Value="Collapsed" />
<Setter TargetName="image2" Property="Visibility" Value="Visible" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Button.Template>
</Button>
【问题讨论】:
标签: wpf xaml listview button drag-and-drop