在 WPF 中,我有一个绑定到 ObservableCollection 的列表视图。
XAML:
<ListView Name="listView" DockPanel.Dock="Top" ItemsSource="{Binding Path=ListOfOldData}" SelectedItem="{Binding Path=SelectedOldData, Mode=TwoWay}" SelectionMode="Single">
<ListView.ContextMenu>
<ContextMenu>
<Button Content="Load" Command="{Binding Path=LoadCommand}" Name="loadButton" Height="23" Width="75" DockPanel.Dock="Left"/>
<!-- Is working just fine -->
</ContextMenu>
</ListView.ContextMenu>
<ListView.ItemTemplate>
<DataTemplate>
<TextBlock MouseLeftButtonDown="TextBlock_MouseLeftButtonDown"
Text="{Binding Path=Name}" FontWeight="Bold"><TextBlock Text=" - " FontWeight="Normal"/><TextBlock Text="{Binding Path=UpdateDatum}" FontWeight="Normal"/></TextBlock>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
我真正想要收到的是双击所选项目。由于我无法将命令绑定到 xaml 中的文本块(可以吗?),我尝试通过MouseLeftButtonDown-Event
. 但该事件从未收到!
C#(在后面的代码中):
private void TextBlock_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
Console.WriteLine("MouseLeftButtonDown received!");
}
我究竟做错了什么?如何接收活动?顺便说一句:上下文菜单的命令工作得很好:)
更新我发现了我的错误——>我在错误的用户控件中添加了事件。该死的,我的注意力不集中。很抱歉打扰大家。