【问题标题】:Drag a not selected item from list with an already selected item does not come into drag info on mouse down event?从列表中拖动未选中的项目,已选中的项目在鼠标按下事件时不会进入拖动信息?
【发布时间】:2012-12-01 07:30:27
【问题描述】:

在 WPF ItemsControl 中,在按下 control 键的情况下拖动已选中项目的项目(未选中)不会将单击的项目放入项目控件的已选项目列表中。因此,第二个项目(未选择但已拖动)永远不会被丢弃,因为它不在选定的项目控件列表中。 DragInfo 对象正在拖动源的鼠标左键按下事件上创建。

【问题讨论】:

    标签: wpf drag-and-drop


    【解决方案1】:

    不使用选中项,而是在 MouseDown 事件中使用 InputHitTest 来查找被点击的元素,并使用该元素的 DataContext 来创建 DragInfo 对象。

    【讨论】:

    • 这对我来说很好。我添加了一个列表属性来保存所有拖动的项目。谢谢。
    【解决方案2】:

    我不确定这是否是您想要的,但您可以处理 OnPreviewMouseleftButtonDown 事件并将拖动(但未选中)的项目添加到 SelectedItems

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-07-23
      • 1970-01-01
      相关资源
      最近更新 更多