簡體   English   中英

C#(WinForm)中的DragDrop按鈕文本

[英]DragDrop button text in C# (WinForm)

我的目標是要有多個按鈕,通過將文本從一個按鈕拖到另一個按鈕,可以在屏幕上切換文本(不必切換按鈕本身,只需要切換按鈕上的文本即可,盡管這樣更容易切換按鈕本身, 沒關系)。 我試圖按照這篇MSDN文章進行操作,但是實際上我一開始拖動它,就會得到一個“否”符號(帶有/的O)。 我想念什么嗎? (下面的代碼)

提前致謝!

public partial class Form1 : Form
{
    Button button1 = new Button();
    Button button2 = new Button();

    public Form1()
    {
        InitializeComponent();

        button1.Text = "Button 1";
        button2.Text = "Button 2";

        button2.Location = new Point(100, 0);

        this.Controls.Add(button1);
        this.Controls.Add(button2);

        button1.MouseDown += new MouseEventHandler(button_MouseDown);
        button2.MouseDown += new MouseEventHandler(button_MouseDown);

        button1.DragEnter += new DragEventHandler(button_DragEnter);
        button2.DragEnter += new DragEventHandler(button_DragEnter);

        button1.DragDrop += new DragEventHandler(button_DragDrop);
    }

    private void button_MouseDown(object sender, MouseEventArgs e)
    {
        ((Button)sender).DoDragDrop(((Button)sender).Text, DragDropEffects.Move);
    }

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

    private void button_DragDrop(object sender, DragEventArgs e)
    {
        //I'm not sure what goes here, but I can figure that out through experimentation
    }
}

事實證明,我只需要做更多研究。 為兩個按鈕添加button.AllowDrop = true解決了該問題

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM