0

我有一个嵌入两个用户控件的控件,这些用户控件有一些子控件。

以供参考:


**MyControl**      

*User Control 1 (UC1)*

    SubControl UC1-1

*User Control 2 (UC2)*

    SubControl UC2-1          SubControl UC2-2            SubCOntrol UC2-3

现在从 UC1-1 我必须拖动一个对象并将其放在 UC2-2 上。

为此,我已将 UC2 和 UC2-2 的 AllowDrop 属性启用为 true,将 UC2-1 和 UC2-3 启用为 false,因此无法在这些控件上放置对象。

我正在使用 UC1-1 控件的 GiveFeedback 事件来更改光标。

private void grid_GiveFeedback(object sender, GiveFeedbackEventArgs e)
{
    e.UseDefaultCursors = false;
    Cursor.Current = MyCursor;
}

这样,当我将鼠标拖到 UC2 上时,光标会发生变化,但所有子控件 - UC2-1、UC2-2 和 UC2-3 都会发生变化。

编辑 :

为了获得复制效果,我已经处理了 DragEnter 事件。

private void UC2_2_DragEnter(object sender, DragEventArgs e)
{
    e.Effect = DragDropEffects.Copy;
}

我想要的是仅在光标移到 UC2-2 上而不是 UC2-1 和 UC2-3 时更改光标。

4

0 回答 0