#wpf #xaml #listview
#wpf #xaml #listview
Вопрос:
Я создал следующий заголовок для ListView в WPF, но события наведения курсора мыши из обоих изображений не запускаются, и я думаю, это потому, что заголовок обрабатывает мышь. Могу ли я отключить заголовок? Или как-то заставить изображения управлять мышью?
XAML:
<ListView>
<ListView.View>
<GridView>
<GridViewColumn>
<GridViewColumn.Header>
<StackPanel Orientation="Horizontal">
<TextBlock Text="Colmun1" VerticalAlignment="Center"/>
<Image Source="Edit.png" Width="24" Height="24" MouseUp="Image_MouseUp"/>
<Image Source="Cancel.png" Width="24" Height="24" MouseUp="Image_MouseUp"/>
</StackPanel>
</GridViewColumn.Header>
</GridViewColumn>
</GridView>
</ListView.View>
<ListViewItem Content="Test"/>
<ListViewItem Content="Test"/>
<ListViewItem Content="Test"/>
<ListViewItem Content="Test"/>
<ListViewItem Content="Test"/>
</ListView>
Комментарии:
1. Скорее всего, событие up обрабатывается до того, как оно попадет на изображение. Попробуйте наведение курсора мыши и посмотрите, сработает ли он. Поймите, теперь вы можете захотеть обработать наведение курсора мыши — это просто для отладки.
2. Я могу обработать событие наведения курсора мыши. Я могу использовать это, конечно, но, если возможно, я предпочитаю наведение курсора мыши…
Ответ №1:
Попробуй Мышкой.Предварительный просмотр Прикрепленного события
Обновить
Вы правы. Это работает, только если вы обернете Image
в Button
.
<Button PreviewMouseUp="Image_MouseUp">
<Image Source="Edit.png" Width="24" Height="24" />
</Button>
Может быть, у кого-то другого есть еще лучшее решение.
Комментарии:
1. Изменение изображения на
<Image Source="Edit.png" Width="24" Height="24" Mouse.PreviewMouseUp="Image_MouseUp"/>
не помогает…