В настоящее время у меня есть GridViewColumns
, например:
<GridViewColumn Width="20">
<GridViewColumnHeader Content="X" />
<GridViewColumn.CellTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<Image Width="18"
Height="18"
Source="{Binding VisibleIcon}"
Opacity="{Binding VisibleOpacity}"/>
<TextBlock Text="{Binding Name}"/>
</StackPanel>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
где я хочу что-то сделать с элементом, который щелкнул по этому столбцу. Но я не знаю, как добавить событие Click
, потому что ни GridViewColumn
, ни Image
не имеет события Click
.
Я надеялся на что-то вроде этого:
void ClickEvent ...
{
SelectLayer (boundDataItem);
// boundDataItem is of type `Layer`.
}
РЕДАКТИРОВАТЬ: Я обнаружил событие MouseLeftButtonDown
, но оно не дает мне элемент данных с привязкой по нажатию, может только получить изображение или текст, но они не являются уникальными для поиска изображения.
EDIT2: Другое дело даже с MouseLeftButtonDown
, оно работает только, если я нажимаю на сам TextBlock
, а не за его пределы даже в пределах того же GridViewColumn
.