Openfiledialog Multiselect

You*_*ran 4 c# openfiledialog

我正在使用多选文件对话框来浏览多个图片并将它们添加到datagridview然后从那里将它们存储在数据库中.

出于问题,我只设法存储了第一张选定的图片(根本没有语法或运行时错误).

经过检查,我意识到文件对话框仅获取第一张图像的完整路径,并将其用于其余图像.

示例代码:

if (ofd_pic.ShowDialog() == DialogResult.OK)
{
   foreach (String file in ofd_pic.FileNames)
   {
    MessageBox.Show(ofd_pic.FileName);
   }
}
Run Code Online (Sandbox Code Playgroud)

该消息框将始终仅显示第一个图像的路径,并且我无法获得每个所选图像的路径.

文件对话框的属性是:

1.Modifiers:私人.2. MultiSelect:True.3. RestoreDirectory:True.

有帮助吗?

Sri*_*vel 10

你实际上是循环遍历所有文件,但你永远不会使用它.您需要使用循环变量file

foreach (String file in ofd_pic.FileNames)
{
    MessageBox.Show(file);
}
Run Code Online (Sandbox Code Playgroud)

ofd_pic.FileName属性应当您设定仅用于MultiSelectfalse,那么只有很有道理.我猜FileName你启用时会返回第一个文件MultiSelect.