我有一个问题球员我想获得行细节,当我点击我的列表视图上的行我知道它如何在窗口窗体中执行,但它是使用C#WPF在WPF/IM不同,请提前 沙善 感谢帮助我如何从列表视图获取其双击事件(WPF)的价值
0
A
回答
1
如果你有到ListView一个参考,你可以使用SelectedItem属性。您还可以将SelectedItem绑定到ViewModel上的属性,然后从中读取值。最后,你可以设置IsSynchronizedWithCurrentItem为True您的ListView,然后使用:
CollectionViewSource.GetDefaultView(sourceList).CurrentItem
其中SOURCELIST是ListView控件的的ItemsSource。
1
您可以通过添加以下XAML到您的<Window.Resources>
添加事件处理程序到您的ListViewItems:
<Style TargetType="ListViewItem">
<EventSetter Event="MouseDoubleClick" Handler="MyEventHandler" />
</Style>
然后,你必须在你的代码添加事件处理程序:
private void MyEventHandler(object sender, MouseButtonEventArgs e)
{
ListViewItem MyListViewItem = (ListViewItem)sender;
MyClass MyObject = (MyClass)Item.Content;
e.Handled = true;
}
在这个例子中,MyObject
包含绑定到单击的ListViewItem的对象。例如,在我的一个项目中,我有一个绑定到ObservableCollection<SongData>
的ListView。然后我会使用下面的代码:
private void MyEventHandler(object sender, MouseButtonEventArgs e)
{
ListViewItem Item = (ListViewItem)sender;
SongData Song = (SongData)Item.Content;
// Example
MessageBox.Show(Song.Title + " by " + Song.Artist);
e.Handled = true;
}
我不知道这是否让你任何进一步的,但它应该工作的罚款。
哦,顺便说一下,您也可以附加一个事件处理程序到ListView
使用SelectedItem
属性,但对于我来说,这会导致一些问题,例如,如果您在项目中单击柱状标头或空白区域被选中,它也会触发事件处理程序。因此,我宁愿使用我提出的第一种方法。
相关问题
- 1. 如何从按钮点击从列表视图获取textviews的价值?
- 2. 列表视图双击事件
- 3. 试图从列表视图中的文本视图获取价值在Android中的单击事件
- 4. 如何在双击安卓手机图表中获取价值
- 5. WPF列表视图获取行值
- 6. 无法从列表视图中的选定项目获取价值WPF
- 7. 列表视图双击
- 8. 我如何从列表视图中获得价值
- 9. 如何从列表视图中获取特定列值点击该列表视图中的一行
- 10. 网格视图:从其他表中获取一个列值
- 11. 如何从以前的Yii视图中获取价值
- 12. 如何从列表视图中的选定项目获取值?
- 13. 如何从列表视图中获取所有值? Android的
- 14. Dropmenu从列表中获取价值
- 15. 从熊猫列表中获取价值
- 16. 如何获取列表视图中的所有行wpf
- 17. 双击事件触发时如何取消单击事件
- 18. 如何从列表视图中获取编辑文本值
- 19. 如何从自定义列表视图获取所有edittext值
- 20. 如何从列表视图中获取列表项的数量?
- 21. 如何获取视图下的一个视图的点击事件android
- 22. 如何检测谷歌图表上的双击事件(饼图)
- 23. 如何从父视图中捕获Key Down事件到WPF中的子视图
- 24. 捕获双击托盘图标事件
- 25. WPF的ListView ScrollViewer中双击事件
- 26. CustomUserControl双击WPF中ControlTemplate中的事件
- 27. 列表视图双击项目
- 28. 如何获取MySQL视图的列表?
- 29. C#列表框项目双击事件
- 30. 获取jQuery中的双击事件表的rowid
曼联值得一票高达 这帮助我: 私人无效一个MyEventHandler(对象发件人,MouseButtonEventArgs E) { ListViewItem的项目=(ListViewItem的)发件人; SongData Song =(SongData)Item.Content; // Example MessageBox.Show(Song.Title +“by”+ Song.Artist); e.Handled = true; } – 2015-11-08 17:40:46
其实我是一个Java/Android开发人员在Java/Android有广泛的知识,但在姐妹的项目上工作,必须在.net中,所以我正在研究基于wpf xaml的应用程序,并且我是新来的C#wpf .. 这真的帮我 – 2015-11-08 17:42:43