【发布时间】:2009-10-20 19:26:04
【问题描述】:
我不想在整个 ListBox 上放置一些东西,而是在特定的 ListBoxItem 上放置一些东西。我正在处理 ListBox 的 Drop 事件 - 我怎样才能知道鼠标指向哪个项目?
【问题讨论】:
标签: c# wpf user-interface drag-and-drop
我不想在整个 ListBox 上放置一些东西,而是在特定的 ListBoxItem 上放置一些东西。我正在处理 ListBox 的 Drop 事件 - 我怎样才能知道鼠标指向哪个项目?
【问题讨论】:
标签: c# wpf user-interface drag-and-drop
if (e.Data.GetDataPresent(typeof(Songs)))
{
var result = VisualTreeHelper.HitTest(myCanvas, Mouse.GetPosition(this.Playlists));
}
如果使用画布,请尝试相对于画布执行命中测试(将“myCanvas”替换为参考)
【讨论】:
我现在设法解决了这个问题,方法是设置 AllowDrop 和 Drop 事件处理程序,而不是在 ListBox 上,而是在 ItemTemplate 中的控件上。
【讨论】:
您可以使用VisualTreeHelper.HitTest 来确定哪个 ListViewItem 在给定点。也就是说,很可能有一种更简单的方法可以满足您的要求,但没有足够的信息继续下去。
【讨论】: