在以下代码中,我将ofd1.RestoreDirectory
设置为false
,但是对话框每次都会打开初始目录。有我不知道的东西吗?
private void btnMeshFile_Click(object sender, EventArgs e)
{
OpenFileDialog ofd1 = new OpenFileDialog();
ofd1.Title = "Open";
ofd1.InitialDirectory = @"c:\";
ofd1.Filter = "All files (*.*)|*.*|All files (*.*)|*.*";
ofd1.FilterIndex = 2;
ofd1.RestoreDirectory = false;
if (ofd1.ShowDialog() == DialogResult.OK)
{
string fileName = Path.GetFileName(ofd1.FileName);
MeshDirectoryPath = Path.GetFullPath(ofd1.FileName).Replace(@"\", @"\\");
txtMeshFile.Text = fileName;
}
}
最佳答案
来自RestoreDirectory
的MSDN文档
获取或设置一个值,该值指示对话框是否还原了
关闭前的当前目录。
因此,此属性用于还原OS
当前目录。
但是您,在代码中还使用了InitialDirectory
属性,每次从@"c:\";
路径开始时都强制对话框。删除它,它将解决您的问题。
关于c# - “.RestoreDirectory”不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9295739/