Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 从PreviewMouseLeftButtonDown获取Listview和ListViewItem的索引_C#_Wpf_Listview_Listviewitem - Fatal编程技术网

C# 从PreviewMouseLeftButtonDown获取Listview和ListViewItem的索引

C# 从PreviewMouseLeftButtonDown获取Listview和ListViewItem的索引,c#,wpf,listview,listviewitem,C#,Wpf,Listview,Listviewitem,因此,我有ListView和MyData对象。 一旦我单击鼠标左键而不释放(因此该项目尚未被选中),我想获取我的项目(ListViewItem或仅获取ListViewItem索引…) 这就是我尝试过的: ListView listView; private void listView_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e) { var obj = e.Source; MyData myD

因此,我有
ListView
MyData
对象。 一旦我单击鼠标左键而不释放(因此该项目尚未被选中),我想获取我的项目(
ListViewItem
或仅获取
ListViewItem
索引…)

这就是我尝试过的:

ListView listView;

private void listView_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
    var obj = e.Source;
    MyData myData = (MyData)(sender as ListView).SelectedItem;
    if (myData!= null)
    {
        // Do my stuff...
    }
}
不幸的是,由于未选择
ListViewItem
,因此我的
myData
始终为
null

有什么建议吗?

试着检查
((System.Windows.FrameworkElement)e.OriginalSource).DataContext

尝试检查
((System.Windows.FrameworkElement)e.OriginalSource.DataContext

有可能,有可能。