2017-04-01 2 views
0

私の目標は、テキストをあるボタンから別のボタンにドラッグすることで、テキストを画面上で切り替えることができるようにすることです(ボタン自体を切り替える必要はなく、ボタン自体を切り替える方が簡単な場合でも、それは問題ありません)。私はthis MSDN articleに従うことを試みましたが、実際にドラッグを開始するとすぐに、「いいえ」の記号(Oが付いています)が表示されます。何か不足していますか? (下のコード)C#でのドラッグドロップボタンのテキスト

ありがとうございます!

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 
    } 
} 

答えて

0

だから私はもう少し研究をしなければならなかった。両方のボタンにbutton.AllowDrop = trueを追加すると、問題が解決しました

関連する問題