我是winforms的新手,在我的应用程序中面临一个问题。我试图在我的表单上使用 SaveFileDialog 控件向用户显示保存文件。但是一旦用户选择了他的目录并保存了他的文件,我使用 Directory.getCurrentDirectory()的下一个代码就无法指向我的工作目录。似乎SaveFileDialog在这里引起了问题。
例如: - 我有这些代码行 -
MessageBox.Show( Directory.GetCurrentDirectory( ) ); // output: C:\TestSamples\TestApp\Bin\Debug
fdSave.ShowDialog( ); // fdSave is SaveFileDialog control which will show to save file
MessageBox.Show( Directory.GetCurrentDirectory( ) ); //output: C:\Program files\outputDir (This is the path chosen by user to save file in previous saveDialog.)
是否有任何解决方案,以便我的当前工作目录不会被更改,或者我应该在使用saveDialog之前保留一个变量来存储我当前的工作目录?
答案 0 :(得分:4)
我在Raymond Chen's excellent blog的评论中找到了可能的答案:
在System.Windows.Forms.FileDialog类中的,有一个属性'RestoreDirectory'
答案 1 :(得分:1)
如果您一直希望它指向bin目录
,那么您可以使用Application.StartupPath