Поделиться через


Практическое руководство. Выбор папки с помощью компонента FolderBrowserDialog в Windows Forms

Обновлен: Ноябрь 2007

В создаваемых приложениях Windows пользователям часто приходится выбирать папку, обычно для сохранения набора файлов. С помощью компонента Windows Forms FolderBrowserDialog эта задача легко решается.

Выбор папок с помощью компонента FolderBrowserDialog

  1. В процедуре проверьте свойство DialogResult компонента FolderBrowserDialog, чтобы узнать, как было закрыто диалоговое окно и получить значение свойства SelectedPath компонента FolderBrowserDialog.

  2. Если необходимо задать папку самого верхнего уровня, которая будет отображаться в дереве этого диалогового окна, задайте свойство RootFolder, которое выбирает член перечисления SpecialFolder.

  3. Кроме того, можно задать свойство Description, которое указывает строку текста, появляющуюся вверху дерева обозревателя папок.

    В приведенном ниже примере компонент FolderBrowserDialog используется для выбора папки в случае, подобном тому, когда при создании проекта в Visual Studio пользователя просят выбрать папку для сохранения в ней проекта. В данном примере имя папки затем отображается в элементе управления TextBox этой формы. Прекрасное решение — поместить расположение в область, доступную для изменения, например элемент управления TextBox, чтобы пользователь имел возможность изменить свой выбор в случае ошибки или других проблем. В этом примере предполагается форма с компонентом FolderBrowserDialog и элементом управления TextBox.

    Public Sub ChooseFolder()
        If FolderBrowserDialog1.ShowDialog() = DialogResult.OK Then
            TextBox1.Text = FolderBrowserDialog1.SelectedPath
        End If
    End Sub
    
    public void ChooseFolder()
    {
        if (folderBrowserDialog1.ShowDialog() == DialogResult.OK) 
        {
            textBox1.Text = folderBrowserDialog1.SelectedPath;
        }
    }
    
    public:
       void ChooseFolder()
       {
          if (folderBrowserDialog1->ShowDialog() == DialogResult::OK)
          {
             textBox1->Text = folderBrowserDialog1->SelectedPath;
          }
       }
    
    xca5d950.alert_security(ru-ru,VS.90).gifПримечание о безопасности.

    Для использования этого класса сборка требует уровня привилегий, предоставляемого свойством FileIOPermissionAttribute.PathDiscoveryProperty, являющимся частью перечисления FileIOPermissionAccess. Если процесс выполняется в контексте с частичным доверием, он может сгенерировать исключение из-за недостатка привилегий. Дополнительные сведения см. в разделе Основы управления доступом для кода.

Сведения о сохранении файлов см. в разделе Практическое руководство. Сохранение файлов с помощью компонента SaveFileDialog.

См. также

Ссылки

Общие сведения о компоненте FolderBrowserDialog (Windows Forms)

FolderBrowserDialog

Другие ресурсы

Компонент FolderBrowserDialog (Windows Forms)