用于DragDrop操作的IsMouseOver上的WPF触发器

时间:2013-02-28 09:28:05

标签: wpf triggers drag-and-drop mouseover

我执行拖放操作,并希望在ismouseover属性为true时触发图像元素来更改其源。 现在我意识到当拖放操作有效时,ismouseover属性不会更新。

还有另一种方法可以在鼠标悬停时更改图像源,同时拖放功能处于活动状态吗?

1 个答案:

答案 0 :(得分:5)

我遇到了同样的问题,最后在我的自定义控件中创建了一个名为IsDragMouseOver的新布尔值,并在我的控件模板中引用它。

在控件后面的代码中,我添加了以下内容:

protected override void OnDragEnter(DragEventArgs e)
    {
        base.OnDragEnter(e);
        IsDragMouseOver = true;
    }

    protected override void OnDragLeave(DragEventArgs e)
    {
        base.OnDragLeave(e);
        IsDragMouseOver = false;
    }

    protected override void OnDragOver(DragEventArgs e)
    {
        base.OnDragOver(e);
        IsDragMouseOver = true;
    }

    protected override void OnDrop(DragEventArgs e)
    {
        base.OnDrop(e);
        IsDragMouseOver = false;
    }

希望有所帮助。