c# 拖拽picturebox到文件夹,在此文件夹生成图片
时间: 2024-03-08 21:46:16 浏览: 76
可以使用 C# 的 DragDrop 事件来实现拖拽图片到文件夹生成图片的功能。具体步骤如下:
1. 在窗体中添加一个 PictureBox 控件,并设置其 AllowDrop 属性为 true。
2. 在窗体的 DragEnter 事件中,判断拖拽进来的数据是否为图片,如果是,则将拖拽效果设置为 Copy。
3. 在窗体的 DragDrop 事件中,获取拖拽进来的图片,并将其保存到指定的文件夹中。
以下是示例代码:
```
private void pictureBox1_DragEnter(object sender, DragEventArgs e)
{
if (e.Data.GetDataPresent(DataFormats.FileDrop))
{
string[] files = (string[])e.Data.GetData(DataFormats.FileDrop);
foreach (string file in files)
{
if (Path.GetExtension(file).ToLower() == ".jpg" || Path.GetExtension(file).ToLower() == ".png")
{
e.Effect = DragDropEffects.Copy;
return;
}
}
}
e.Effect = DragDropEffects.None;
}
private void pictureBox1_DragDrop(object sender, DragEventArgs e)
{
if (e.Data.GetDataPresent(DataFormats.FileDrop))
{
string[] files = (string[])e.Data.GetData(DataFormats.FileDrop);
foreach (string file in files)
{
if (Path.GetExtension(file).ToLower() == ".jpg" || Path.GetExtension(file).ToLower() == ".png")
{
string fileName = Path.GetFileNameWithoutExtension(file);
string folderPath = @"C:\Images\"; // 指定保存图片的文件夹
string filePath = Path.Combine(folderPath, fileName + ".jpg");
File.Copy(file, filePath);
}
}
}
}
```
在上面的代码中,当拖拽进来的数据是图片时,将其拖拽效果设置为 Copy,并在 DragDrop 事件中将图片保存到指定的文件夹中。注意,需要将 folderPath 变量设置为你想要保存图片的文件夹路径。
阅读全文