Winform PictureBox之间复制图片问题
最近要做一个小程序,需要在2个PictureBox(picLeft,picRight)间传递背景图片,小弟试着写了一个,但是没能实现复制效果,顺带一提,picLeft是直接在属性里面设置的BackgroundImage(原本为png格式图片)。小弟把代码放上来让各位大神看看应该怎么修改。先谢谢各位大神了。
public Form1()
{
InitializeComponent();
picLeft.AllowDrop = true;
picRight.AllowDrop = true;
}
//左边PictureBox鼠标按下时激发操作
private void picLeft_MouseDown(object sender, MouseEventArgs e)
{
if (e.Button == System.Windows.Forms.MouseButtons.Left)
{
PictureBox pic = (PictureBox)(sender);
if (pic.BackgroundImage != null)
{
pic.DoDragDrop(pic.BackgroundImage , DragDropEffects.Copy);//拖放操作
}
}
}
private void picRight_DragEnter(object sender, DragEventArgs e)
{
// 检查该图片是否适用于目标控件。如果不适用,则拒绝放置图片。
if (e.Data.GetDataPresent(DataFormats.Bitmap))
{
e.Effect = DragDropEffects.Copy;//执行复制操作
}
else
{
e.Effect = DragDropEffects.None;
}
}
private void picRight_DragDrop(object sender, DragEventArgs e)
{
picRight.BackgroundImage = (Image)e.Data.GetData(DataFormats.Bitmap);
}