使用AllowDrop = true对从Control中删除项目做出反应

时间:2013-07-21 16:43:01

标签: c# winforms drag-and-drop

我是C#中处理Drag-n-Drop事件的新手,我遇到了一个问题。

我有一个WinForms项目,其中包含一个包含按钮和面板的表单。 我将面板AllowDrop属性设置为true,并为DragDrop事件添加了一个处理程序:

panel1.DragDrop += new DragEventHandler(panel1_DragDrop);

对于一个按钮,我添加了一个初始化DragDropEffects的MouseDown事件处理程序:

    void btn1_MouseDown(object sender, MouseEventArgs e)
    {
        (sender as Button).BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
        DragDropEffects dde1 = DoDragDrop((sender as Button), DragDropEffects.All);
    }

我对Panel引发的DragDrop事件没有任何问题;

我的问题是如何处理用户将项目放在AllowDrop属性设置为true的区域之外的事件? 假设我想将Buttons BorderStyle设置回FixedSingle,当用户在执行拖动时释放我的Panel外部的鼠标按钮 - 我应该处理什么事件?

1 个答案:

答案 0 :(得分:1)

处理面板的DragLeave event