FileDialog.InitialDirectory 属性

定义

获取或设置文件对话框显示的初始目录。

public:
 property System::String ^ InitialDirectory { System::String ^ get(); void set(System::String ^ value); };
public string InitialDirectory { get; set; }
member this.InitialDirectory : string with get, set
Public Property InitialDirectory As String

属性值

文件对话框中显示的初始目录。 默认值为空字符串("")。

示例

下面的代码示例使用 OpenFileDialog 和 的 FileDialog 实现,说明了如何创建、设置属性以及显示对话框。 该示例使用 InitialDirectory 属性设置向用户显示对话框时的初始目录。 该示例需要一个窗体,其中放置了 一个 Button ,并 System.IO 添加了命名空间。

private:
   void button1_Click( Object^ /*sender*/, System::EventArgs^ /*e*/ )
   {
      Stream^ myStream;
      OpenFileDialog^ openFileDialog1 = gcnew OpenFileDialog;

      openFileDialog1->InitialDirectory = "c:\\";
      openFileDialog1->Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*";
      openFileDialog1->FilterIndex = 2;
      openFileDialog1->RestoreDirectory = true;

      if ( openFileDialog1->ShowDialog() == System::Windows::Forms::DialogResult::OK )
      {
         if ( (myStream = openFileDialog1->OpenFile()) != nullptr )
         {
            // Insert code to read the stream here.
            myStream->Close();
         }
      }
   }
var fileContent = string.Empty;
var filePath = string.Empty;

using (OpenFileDialog openFileDialog = new OpenFileDialog())
{
    openFileDialog.InitialDirectory = "c:\\";
    openFileDialog.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*";
    openFileDialog.FilterIndex = 2;
    openFileDialog.RestoreDirectory = true;

    if (openFileDialog.ShowDialog() == DialogResult.OK)
    {
        //Get the path of specified file
        filePath = openFileDialog.FileName;

        //Read the contents of the file into a stream
        var fileStream = openFileDialog.OpenFile();

        using (StreamReader reader = new StreamReader(fileStream))
        {
            fileContent = reader.ReadToEnd();
        }
    }
}

MessageBox.Show(fileContent, "File Content at path: " + filePath, MessageBoxButtons.OK);
Private Sub button1_Click(ByVal sender As Object, ByVal e As System.EventArgs)
    Dim myStream As Stream = Nothing
    Dim openFileDialog1 As New OpenFileDialog()

    openFileDialog1.InitialDirectory = "c:\"
    openFileDialog1.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*"
    openFileDialog1.FilterIndex = 2
    openFileDialog1.RestoreDirectory = True

    If openFileDialog1.ShowDialog() = System.Windows.Forms.DialogResult.OK Then
        Try
            myStream = openFileDialog1.OpenFile()
            If (myStream IsNot Nothing) Then
                ' Insert code to read the stream here.
            End If
        Catch Ex As Exception
            MessageBox.Show("Cannot read file from disk. Original error: " & Ex.Message)
        Finally
            ' Check this again, since we need to make sure we didn't throw an exception on open.
            If (myStream IsNot Nothing) Then
                myStream.Close()
            End If
        End Try
    End If
End Sub

注解

通常 InitialDirectory 使用以下源之一设置 属性:

  • 以前在程序中使用的路径,可能保留自最后一个目录或文件操作。

  • 从持久源读取的路径,例如应用程序设置、 Registry 应用程序中的 或字符串资源。

  • 可以使用 方法获取 GetFolderPath 的标准 Windows 系统和用户路径,例如 Program Files、MyDocuments、MyMusic 等 ()

  • 与当前应用程序相关的路径,例如其启动目录 (可以使用对象) 上的 Application 属性获取该路径。

有关创建动态路径的详细信息,请参阅 FileDialog 类概述。

在 Windows Vista 上,如果 InitialDirectory 设置为完整文件名,而不仅仅是目录路径,则初始目录将默认为应用程序路径或用户上次从中选择文件的目录。

适用于

另请参阅