[英]how can i drag a label to a picturebox?
我想拖動label2並將其放入pictureBox1,但它不起作用,我不知道是什么問題
private void pictureBox1_DragDrop(object sender, DragEventArgs e)
{
pictureBox1.AllowDrop = true;
if (CurrentDrag.Equals("clock1"))
{
Label pnlDroggedTheme = (Label)sender;
pnlDroggedTheme.Height = pictureBox1.Height;
pnlDroggedTheme.Width = pictureBox1.Width;
label2.Visible = false;
correct++;
label1.Text = correct.ToString();
MessageBox.Show(" cerrect answer");
}
else
wronge++;
label1.Text = wronge.ToString();
MessageBox.Show("wronge answer");
}
這是pictureBox1的DragEnter方法
private void pictureBox1_DragEnter(object sender, DragEventArgs e)
{
如果被刪除的元素的數據來自作為標簽的類型字符串,它應該復制數據
if (e.Data.GetDataPresent(typeof(System.String)))
{
e.Effect = DragDropEffects.Copy;
}
else
{
e.Effect = DragDropEffects.None;
}
}
標簽拖動工作得很好,但我不能把它放在圖片框中
private void label2_MouseDown(object sender, MouseEventArgs e)
{
CurrentDrag = "clock1";
Label labelV = (Label)sender;
labelV .DoDragDrop(labelV .BackColor, DragDropEffects.Copy);
}
您正在進行拖放事件檢查,如果數據類型是System.String
,如果不是,則不執行任何操作,但您正在為System.Color
執行拖放操作。 我想你想做什么
Label labelV = (Label)sender;
labelV .DoDragDrop(labelV.Text, DragDropEffects.Copy);
您應該這樣做或修改拖放事件以接受System.Color
。
另外,你應該移動你的pictureBox1.AllowDrop = true;
到構造函數或Form_Load
或在設計時將屬性設置為true。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.