c# - WPF 拖动距离阈值

标签 c# wpf drag-and-drop treeview

我有一个包含两个 WPF TreeView 的程序,允许在两者之间拖放。问题是,打开/关闭 TreeView 上的项目可能很烦人,因为在按住鼠标左键的同时仅移动鼠标一个像素会触发拖放功能。有什么方法可以指定鼠标在被视为拖放之前应该移动多远?

最佳答案

为此有一个系统参数。如果你有

Point down = {where mouse down event happened}
Point current = {position in the MouseMove eventargs}

那么鼠标已经移动了最小拖动距离如果

Math.Abs(current.X - down.X) >= SystemParameters.MinimumHorizontalDragDistance ||
Math.Abs(current.Y - down.Y) >= SystemParameters.MinimumVerticalDragDistance

关于c# - WPF 拖动距离阈值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2068106/

相关文章:

c# - 根据分组删除列表中除 1 个对象以外的所有对象

c# - 如果未通过身份验证,则将用户重定向到登录页面

c# - 语法:yield return enumerable without loop

wpf - 无法设置 CheckComboBox 中所选项目的初始状态

Java Netbeans 在模块之间拖放

c# - AuthenticationHeaderValue 中的冒号字符

wpf - 在 WPF 中,如何将命令转发给子控件?

wpf - 操作事件未触发

JQuery:如何将多行从一个表拖动到另一个表?

cocoa - 在沙盒 Mac 中执行拖放