C#OpenFileDialog存储路径

C#OpenFileDialog存储路径,c#,winforms,openfiledialog,C#,Winforms,Openfiledialog,在我的应用程序中,用户需要在两个位置选择文件。在这两种情况下,文件都位于不同的目录中,但它们在运行之间通常是相同的 OpenFileDialog似乎默认为使用的最后一个目录,但这对我来说毫无用处,因为它几乎总是错误的文件夹,我最终在两个文件夹之间交替使用。我想让第一个对话框记住上次打开时使用的路径,第二个对话框也记住自己的路径 示例:路径A是C:\foo\bar\something\x.dll,路径B是C:\foo\baz\whatever\y.xml 对话框a打开,我选择a,然后对话框b打开(

在我的应用程序中,用户需要在两个位置选择文件。在这两种情况下,文件都位于不同的目录中,但它们在运行之间通常是相同的

OpenFileDialog似乎默认为使用的最后一个目录,但这对我来说毫无用处,因为它几乎总是错误的文件夹,我最终在两个文件夹之间交替使用。我想让第一个对话框记住上次打开时使用的路径,第二个对话框也记住自己的路径

示例:路径A是C:\foo\bar\something\x.dll,路径B是C:\foo\baz\whatever\y.xml

对话框a打开,我选择a,然后对话框b打开(默认为a),我必须来回导航到b。 当我再次打开应用程序时,对话框a打开(默认为B),我必须再次导航回a


我想通过分别记住路径来避免所有这些额外的导航。有什么好办法吗?

打开每个对话框时,只需将对话框的属性设置为上次用于该对话框的文件夹即可


当然,这将需要为每个对话框保存目录,但它将提供您希望实现的行为。

我喜欢它,但在对话框关闭后提取路径时有点困难。我可以获取文件名,但是除了修剪到最后一个/?@captncaig:使用System.IO.path.GetDirectoryName(文件名)之外,是否还有其他方法获取最终路径;见: