reckfellENGINE

FileDialog

Диалог выбора пути к файлу или каталогу; загрузку и сохранение выполняет приложение.

На этой странице
class FileDialogReckfellSharpНаследует ConfirmationDialog

Создайте FileDialog дочерним объектом своего интерфейса, задайте FileMode, Access, Filters и начальный путь. До открытия подключите FileSelected, FilesSelected или DirSelected под нужный режим. Для показа вызовите PopupFileDialog. Изменение свойств само не открывает окно и не подтверждает выбор.

OpenFile выбирает один файл, OpenFiles — несколько, OpenDir — каталог. OpenAny может дать FileSelected или DirSelected, поэтому обрабатывайте оба сигнала. SaveFile выбирает путь назначения и также сообщает FileSelected; файл при этом не создаётся и не записывается. Приложение само открывает FileAccess/ResourceLoader, проверяет результат и показывает ошибку.

Access.Resources ограничивает навигацию областью asset://, Userdata — user://, Filesystem использует доступную файловую систему ОС. Это не выдача прав доступа. Для пользовательских сохранений обычно нужен user://; в экспортированном приложении asset:// может быть недоступен для записи. После смены Access задайте начальный каталог заново: прежнее ограничение RootSubfolder сбрасывается.

CurrentDir — каталог, CurrentFile — текст имени файла, CurrentPath — их объединение. Для полного пути используйте CurrentPath, для имени в текущем каталоге — CurrentFile. CurrentPath без разделителя меняет только имя; пустая строка ничего не сбрасывает. Свойства не создают каталог или файл, а setter не возвращает Error: читайте фактический путь обратно и проверяйте операции ввода/вывода отдельно.

Filters — список масок, например .png,.jpg ; Изображения. Для расширения используйте *.png; .png само по себе не является маской расширения. Допустимо и конкретное имя файла. AddFilter принимает маску, подпись и необязательный MIME; в строковом списке MIME идёт третьей частью после ;. Массивы копируются: изменение полученного Filters не меняет диалог. Фильтр помогает навигации и выбору расширения, но не доказывает формат содержимого файла.

UseNativeDialog — запрос системного диалога при доступной поддержке платформы. Возможности фильтров и дополнительных опций зависят от backend; в sandbox ОС нативный путь может требоваться независимо от флага. GetVBox/GetLineEdit относятся к встроенному UI, а не к элементам системного окна. Настройте способ показа до открытия.

GetLineEdit возвращает принадлежащее диалогу поле имени файла, не поле поиска. GetVBox возвращает его внутренний контейнер. Их можно настраивать, но нельзя освобождать или переносить отдельно. Отмена не является успешным выбором; отсутствие FileSelected не заменяет собственную обработку отмены через унаследованный Canceled.

Invalidate помечает видимый встроенный список для отложенного обновления. Для скрытого диалога это не немедленное сканирование каталога. Не используйте его вместо проверки существования файла перед чтением/записью. Предупреждение о перезаписи также не заменяет проверку результата сохранения.

Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.

Конструкторы1

FileDialogКонструктор
# FileDialog
C#
public FileDialog();

Создаёт скрытый диалог в режиме SaveFile и области Resources. Начальная конфигурация не создаёт файл и не открывает системное окно.

Свойства25

AccessСвойство
# Access
C#
public FileDialog.AccessEnum Access { get; set; }

Область навигации: Resources (asset://), Userdata (user://) или Filesystem. По умолчанию Resources. Не выдаёт права ОС; смена сбрасывает RootSubfolder и состояние каталога следует настроить заново.

CurrentDirСвойство
# CurrentDir
C#
public string CurrentDir { get; set; }

Текущий каталог, не выбранный файл. Предпочитайте явный путь asset://, user:// или абсолютный путь под выбранный Access. Setter не создаёт каталог и не означает успешное подтверждение.

CurrentFileСвойство
# CurrentFile
C#
public string CurrentFile { get; set; }

Текст поля имени, обычно без каталога. Не загружает и не создаёт файл, не испускает FileSelected. Для полного пути используйте CurrentPath.

CurrentPathСвойство
# CurrentPath
C#
public string CurrentPath { get; set; }

Объединение CurrentDir и CurrentFile. Setter полного пути задаёт каталог и имя; путь без разделителя меняет только имя, пустая строка — no-op. Не является доказательством существования файла.

DeletingEnabledСвойство
# DeletingEnabled
C#
public bool DeletingEnabled { get; set; }

Разрешает действие удаления в меню встроенного списка, перемещающее выбранный объект в корзину при выполнении. Сам флаг ничего не удаляет; false не запрещает FileAccess/DirAccess приложения.

DisplayModeСвойство
# DisplayMode
C#
public FileDialog.DisplayModeEnum DisplayMode { get; set; }

Вид встроенного списка: Thumbnails или List. Не меняет FileMode, Access и результат чтения файла. Наличие качественной миниатюры зависит от настроенного источника миниатюр.

DriveSelectorEnabledСвойство
# DriveSelectorEnabled
C#
public bool DriveSelectorEnabled { get; set; }

Показывать список дисков, когда он применим к текущему Access/платформе. Не выдаёт доступ ко всем дискам ОС.

FavoritesEnabledСвойство
# FavoritesEnabled
C#
public bool FavoritesEnabled { get; set; }

Показывать избранное во встроенном UI. Не очищает общий список SetFavoriteList.

FileFilterToggleEnabledСвойство
# FileFilterToggleEnabled
C#
public bool FileFilterToggleEnabled { get; set; }

Показывать кнопку включения строки поиска имён. true показывает кнопку, но не включает сам поиск; это не список масок расширений Filters.

FileModeСвойство
# FileMode
C#
public FileDialog.FileModeEnum FileMode { get; set; }

Режим выбора: OpenFile, OpenFiles, OpenDir, OpenAny или SaveFile. SaveFile по умолчанию. Меняет стандартные подписи/тип выделения, не выполняет файловую операцию; пользовательский Title сохраняется.

FileNameFilterСвойство
# FileNameFilter
C#
public string FileNameFilter { get; set; }

Поисковый текст имён во встроенном списке, отдельно от масок расширений Filters. При выключенной строке поиска setter сбрасывает запрос. Для постоянного ограничения расширений используйте Filters. Не считайте аргумент FileNameFilterChanged надёжным: в установленном Runtime есть несовпадение типа.

FileSortOptionsEnabledСвойство
# FileSortOptionsEnabled
C#
public bool FileSortOptionsEnabled { get; set; }

Показывать UI сортировки файлов. Не меняет имя, содержимое файла или порядок массива Filters.

FiltersСвойство
# Filters
C#
public string[] Filters { get; set; }

Массив строк маска ; подпись ; MIME, последние части необязательны. Несколько масок в группе разделяются запятой. Getter возвращает копию; setter заменяет список, не валидируя содержимое файлов.

FiltersEnabledСвойство
# FiltersEnabled
C#
public bool FiltersEnabled { get; set; }

Показывать список фильтров расширений. Не очищает Filters и не является кнопкой строки поиска имён.

FolderCreationEnabledСвойство
# FolderCreationEnabled
C#
public bool FolderCreationEnabled { get; set; }

Разрешает UI создания каталога в подходящем FileMode. Не создаёт каталог при присваивании и не запрещает собственные вызовы DirAccess.

HiddenFilesToggleEnabledСвойство
# HiddenFilesToggleEnabled
C#
public bool HiddenFilesToggleEnabled { get; set; }

Показывать кнопку скрытых файлов. Не равно ShowHiddenFiles: скрытие кнопки не меняет текущее включение скрытых элементов.

LayoutToggleEnabledСвойство
# LayoutToggleEnabled
C#
public bool LayoutToggleEnabled { get; set; }

Показывать переключатель Thumbnails/List. Не сбрасывает текущий DisplayMode.

ModeOverridesTitleСвойство · Устарело
# ModeOverridesTitle
C#
public bool ModeOverridesTitle { get; set; }

Старый флаг: setter ничего не делает, getter возвращает true. Для своего заголовка задайте Title; в установленном SDK пользовательский Title сохраняется при смене FileMode.

NavigationButtonsEnabledСвойство
# NavigationButtonsEnabled
C#
public bool NavigationButtonsEnabled { get; set; }

Показывать кнопки назад/вперёд. Не блокирует программные CurrentDir/CurrentPath.

OptionCountСвойство
# OptionCount
C#
public int OptionCount { get; set; }

Количество дополнительных настроек. Уменьшение сохраняет префикс списка; увеличение создаёт пустые записи, которым нужно задать уникальные имена, values и default. Изменение может пересоздать UI и сбросить текущие ответы к defaults.

OverwriteWarningEnabledСвойство
# OverwriteWarningEnabled
C#
public bool OverwriteWarningEnabled { get; set; }

Запрашивать подтверждение существующего пути в SaveFile. FileDialog не выполняет запись; даже после подтверждения проверяйте результат собственного сохранения.

RecentListEnabledСвойство
# RecentListEnabled
C#
public bool RecentListEnabled { get; set; }

Показывать недавние каталоги во встроенном UI. Не очищает общий список SetRecentList.

RootSubfolderСвойство
# RootSubfolder
C#
public string RootSubfolder { get; set; }

Существующий каталог, ограничивающий навигацию встроенного UI в текущей области Access. Пустая строка снимает настройку; смена Access сбрасывает её. Не создаёт каталог и не является границей безопасности для собственного FileAccess — проверяйте конечный путь отдельно.

ShowHiddenFilesСвойство
# ShowHiddenFiles
C#
public bool ShowHiddenFiles { get; set; }

Показывать скрытые элементы во встроенном списке, false по умолчанию. Не переключает FileMode и не выдаёт права доступа к скрытым/защищённым файлам.

UseNativeDialogСвойство
# UseNativeDialog
C#
public bool UseNativeDialog { get; set; }

Запрос системного окна при поддержке нужных возможностей платформой. false не гарантирует встроенный UI в sandbox ОС; true не гарантирует поддержку произвольных добавленных Control. Настраивайте до открытия.

Методы56

AddFilter2 перегрузки
# AddFilter · 1/2
C#
public void AddFilter(string filter, string description);

Короткая перегрузка добавляет маску и подпись с пустым MIME. Для MIME используйте перегрузку с mimeType; фильтр не проверяет содержимое файла.

Параметры
ИмяТипПо умолчанию
filterstring—
descriptionstring—
filter

Группа масок, например .png,.jpg, не строка .png без *.

description

Читаемая подпись группы фильтров.

# AddFilter · 2/2
C#
public void AddFilter(string filter, string description = "", string mimeType = "");

Добавляет группу масок, подпись и необязательный MIME. Пример маски: .png,.jpg; .png без * не используйте. Не подтверждает выбор и не доказывает формат содержимого.

Параметры
ИмяТипПо умолчанию
filterstring—
descriptionstring""
mimeTypestring""
filter

Группа масок, например .png,.jpg, не строка .png без *.

description

Читаемая подпись группы фильтров.

mimeType

Необязательный MIME для backend с его поддержкой.

AddOption2 перегрузки
# AddOption · 1/2
C#
public void AddOption(string name, ReadOnlySpan<string> values, int defaultValueIndex);

Добавляет дополнительную настройку с уникальным name. Пустой values создаёт checkbox с defaultValueIndex 0/1, непустой — список с индексом 0…Length-1; default ограничивается диапазоном. Встроенные контролы создаются при обновлении видимого диалога.

Параметры
ИмяТипПо умолчанию
namestring—
valuesReadOnlySpan<string>—
defaultValueIndexint—
name

Уникальный стабильный ключ/подпись дополнительной настройки.

values

Массив вариантов; пустой задаёт checkbox. Копируется.

defaultValueIndex

Default: 0/1 для checkbox либо индекс варианта, ограничиваемый диапазоном.

# AddOption · 2/2
C#
public void AddOption(string name, string[] values, int defaultValueIndex);

Добавляет дополнительную настройку с уникальным name. Пустой values создаёт checkbox с defaultValueIndex 0/1, непустой — список с индексом 0…Length-1; default ограничивается диапазоном. Встроенные контролы создаются при обновлении видимого диалога.

Параметры
ИмяТипПо умолчанию
namestring—
valuesstring[]—
defaultValueIndexint—
name

Уникальный стабильный ключ/подпись дополнительной настройки.

values

Массив вариантов; пустой задаёт checkbox. Копируется.

defaultValueIndex

Default: 0/1 для checkbox либо индекс варианта, ограничиваемый диапазоном.

ClearFileNameFiltervoid
# ClearFileNameFilter
C#
public void ClearFileNameFilter();

Очищает поисковый запрос имён и обновляет встроенный UI. Не удаляет маски Filters, выбранный путь или файлы. При обработке уведомления учитывайте несовпадение payload FileNameFilterChanged.

ClearFiltersvoid
# ClearFilters
C#
public void ClearFilters();

Удаляет группы фильтров, сохраняя текст имени. Это не сброс пути и не снятие всех пользовательских ограничений ОС.

DeselectAllvoid
# DeselectAll
C#
public void DeselectAll();

Снимает выделение элементов списка и обновляет доступность подтверждения. Не удаляет файлы и не испускает успешный выбор.

GetAccessFileDialog.AccessEnum
# GetAccess
C#
public FileDialog.AccessEnum GetAccess();

Область навигации: Resources (asset://), Userdata (user://) или Filesystem. По умолчанию Resources. Не выдаёт права ОС; смена сбрасывает RootSubfolder и состояние каталога следует настроить заново.

Возвращает FileDialog.AccessEnum

Область навигации: Resources (asset://), Userdata (user://) или Filesystem. По умолчанию Resources. Не выдаёт права ОС; смена сбрасывает RootSubfolder и состояние каталога следует настроить заново.

GetCurrentDirstring
# GetCurrentDir
C#
public string GetCurrentDir();

Текущий каталог, не выбранный файл. Предпочитайте явный путь asset://, user:// или абсолютный путь под выбранный Access. Setter не создаёт каталог и не означает успешное подтверждение.

Возвращает string

Текущий каталог, не выбранный файл. Предпочитайте явный путь asset://, user:// или абсолютный путь под выбранный Access. Setter не создаёт каталог и не означает успешное подтверждение.

GetCurrentFilestring
# GetCurrentFile
C#
public string GetCurrentFile();

Текст поля имени, обычно без каталога. Не загружает и не создаёт файл, не испускает FileSelected. Для полного пути используйте CurrentPath.

Возвращает string

Текст поля имени, обычно без каталога. Не загружает и не создаёт файл, не испускает FileSelected. Для полного пути используйте CurrentPath.

GetCurrentPathstring
# GetCurrentPath
C#
public string GetCurrentPath();

Объединение CurrentDir и CurrentFile. Setter полного пути задаёт каталог и имя; путь без разделителя меняет только имя, пустая строка — no-op. Не является доказательством существования файла.

Возвращает string

Объединение CurrentDir и CurrentFile. Setter полного пути задаёт каталог и имя; путь без разделителя меняет только имя, пустая строка — no-op. Не является доказательством существования файла.

GetDisplayModeFileDialog.DisplayModeEnum
# GetDisplayMode
C#
public FileDialog.DisplayModeEnum GetDisplayMode();

Вид встроенного списка: Thumbnails или List. Не меняет FileMode, Access и результат чтения файла. Наличие качественной миниатюры зависит от настроенного источника миниатюр.

Возвращает FileDialog.DisplayModeEnum

Вид встроенного списка: Thumbnails или List. Не меняет FileMode, Access и результат чтения файла. Наличие качественной миниатюры зависит от настроенного источника миниатюр.

GetFavoriteListstring[]
# GetFavoriteList
C#
public static string[] GetFavoriteList();

Главный поток: возвращает копию общего списка избранных каталогов. Изменение массива не меняет глобальный список; используйте SetFavoriteList.

Возвращает string[]

Главный поток: возвращает копию общего списка избранных каталогов. Изменение массива не меняет глобальный список; используйте SetFavoriteList.

GetFileModeFileDialog.FileModeEnum
# GetFileMode
C#
public FileDialog.FileModeEnum GetFileMode();

Режим выбора: OpenFile, OpenFiles, OpenDir, OpenAny или SaveFile. SaveFile по умолчанию. Меняет стандартные подписи/тип выделения, не выполняет файловую операцию; пользовательский Title сохраняется.

Возвращает FileDialog.FileModeEnum

Режим выбора: OpenFile, OpenFiles, OpenDir, OpenAny или SaveFile. SaveFile по умолчанию. Меняет стандартные подписи/тип выделения, не выполняет файловую операцию; пользовательский Title сохраняется.

GetFileNameFilterstring
# GetFileNameFilter
C#
public string GetFileNameFilter();

Поисковый текст имён во встроенном списке, отдельно от масок расширений Filters. При выключенной строке поиска setter сбрасывает запрос. Для постоянного ограничения расширений используйте Filters. Не считайте аргумент FileNameFilterChanged надёжным: в установленном Runtime есть несовпадение типа.

Возвращает string

Поисковый текст имён во встроенном списке, отдельно от масок расширений Filters. При выключенной строке поиска setter сбрасывает запрос. Для постоянного ограничения расширений используйте Filters. Не считайте аргумент FileNameFilterChanged надёжным: в установленном Runtime есть несовпадение типа.

GetFiltersstring[]
# GetFilters
C#
public string[] GetFilters();

Массив строк маска ; подпись ; MIME, последние части необязательны. Несколько масок в группе разделяются запятой. Getter возвращает копию; setter заменяет список, не валидируя содержимое файлов.

Возвращает string[]

Массив строк маска ; подпись ; MIME, последние части необязательны. Несколько масок в группе разделяются запятой. Getter возвращает копию; setter заменяет список, не валидируя содержимое файлов.

GetLineEditLineEdit
# GetLineEdit
C#
public LineEdit GetLineEdit();

Общее внутреннее поле имени файла. Его Text отражается в CurrentFile; это не поле фильтра. Не освобождайте и не переносите отдельно; не является контролом системного окна ОС.

Возвращает LineEdit

Общее внутреннее поле имени файла. Его Text отражается в CurrentFile; это не поле фильтра. Не освобождайте и не переносите отдельно; не является контролом системного окна ОС.

GetOptionCountint
# GetOptionCount
C#
public int GetOptionCount();

Количество дополнительных настроек. Уменьшение сохраняет префикс списка; увеличение создаёт пустые записи, которым нужно задать уникальные имена, values и default. Изменение может пересоздать UI и сбросить текущие ответы к defaults.

Возвращает int

Количество дополнительных настроек. Уменьшение сохраняет префикс списка; увеличение создаёт пустые записи, которым нужно задать уникальные имена, values и default. Изменение может пересоздать UI и сбросить текущие ответы к defaults.

GetOptionDefaultint
# GetOptionDefault
C#
public int GetOptionDefault(int option);

Возвращает default схемы, не текущее пользовательское значение: 0/1 для checkbox либо индекс варианта.

Параметры
ИмяТипПо умолчанию
optionint—
option

Индекс настройки; SetOption* принимает отрицательный индекс с конца, getters требуют обычный допустимый.

Возвращает int

Возвращает default схемы, не текущее пользовательское значение: 0/1 для checkbox либо индекс варианта.

GetOptionNamestring
# GetOptionName
C#
public string GetOptionName(int option);

Имя настройки по обычному допустимому индексу. Используется ключом GetSelectedOptions, поэтому имена должны быть уникальными и стабильными.

Параметры
ИмяТипПо умолчанию
optionint—
option

Индекс настройки; SetOption* принимает отрицательный индекс с конца, getters требуют обычный допустимый.

Возвращает string

Имя настройки по обычному допустимому индексу. Используется ключом GetSelectedOptions, поэтому имена должны быть уникальными и стабильными.

GetOptionValuesstring[]
# GetOptionValues
C#
public string[] GetOptionValues(int option);

Возвращает копию массива подписей вариантов. Пустой массив означает checkbox, не отсутствие настройки. Изменяйте через SetOptionValues.

Параметры
ИмяТипПо умолчанию
optionint—
option

Индекс настройки; SetOption* принимает отрицательный индекс с конца, getters требуют обычный допустимый.

Возвращает string[]

Возвращает копию массива подписей вариантов. Пустой массив означает checkbox, не отсутствие настройки. Изменяйте через SetOptionValues.

GetRecentListstring[]
# GetRecentList
C#
public static string[] GetRecentList();

Главный поток: копия общего списка недавних каталогов. Это каталоги навигации, не журнал всех открытых файлов.

Возвращает string[]

Главный поток: копия общего списка недавних каталогов. Это каталоги навигации, не журнал всех открытых файлов.

GetRootSubfolderstring
# GetRootSubfolder
C#
public string GetRootSubfolder();

Существующий каталог, ограничивающий навигацию встроенного UI в текущей области Access. Пустая строка снимает настройку; смена Access сбрасывает её. Не создаёт каталог и не является границей безопасности для собственного FileAccess — проверяйте конечный путь отдельно.

Возвращает string

Существующий каталог, ограничивающий навигацию встроенного UI в текущей области Access. Пустая строка снимает настройку; смена Access сбрасывает её. Не создаёт каталог и не является границей безопасности для собственного FileAccess — проверяйте конечный путь отдельно.

GetSelectedOptionsReckfell.Collections.Dictionary
# GetSelectedOptions
C#
public Reckfell.Collections.Dictionary GetSelectedOptions();

Возвращает общий Dictionary name → bool/индекс текущего выбора. До построения контролов он может быть пустым, даже если OptionCount > 0. Перестройка опций сбрасывает его к defaults. Скопируйте нужные значения в модель после принятия выбора; не редактируйте словарь как официальный setter.

Возвращает Reckfell.Collections.Dictionary

Возвращает общий Dictionary name → bool/индекс текущего выбора. До построения контролов он может быть пустым, даже если OptionCount > 0. Перестройка опций сбрасывает его к defaults. Скопируйте нужные значения в модель после принятия выбора; не редактируйте словарь как официальный setter.

GetUseNativeDialogbool
# GetUseNativeDialog
C#
public bool GetUseNativeDialog();

Запрос системного окна при поддержке нужных возможностей платформой. false не гарантирует встроенный UI в sandbox ОС; true не гарантирует поддержку произвольных добавленных Control. Настраивайте до открытия.

Возвращает bool

Запрос системного окна при поддержке нужных возможностей платформой. false не гарантирует встроенный UI в sandbox ОС; true не гарантирует поддержку произвольных добавленных Control. Настраивайте до открытия.

GetVBoxVBoxContainer
# GetVBox
C#
public VBoxContainer GetVBox();

Общий внутренний VBoxContainer встроенного диалога. Добавляйте нужный UI, сохраняя владение контейнером за FileDialog; системный backend не обязан показывать эти Control.

Возвращает VBoxContainer

Общий внутренний VBoxContainer встроенного диалога. Добавляйте нужный UI, сохраняя владение контейнером за FileDialog; системный backend не обязан показывать эти Control.

Invalidatevoid
# Invalidate
C#
public void Invalidate();

Планирует обновление видимого встроенного списка; для скрытого диалога ничего немедленно не сканирует. Не является проверкой существования файла или подтверждением выбора.

IsCustomizationFlagEnabledbool
# IsCustomizationFlagEnabled
C#
public bool IsCustomizationFlagEnabled(FileDialog.Customization flag);

Возвращает настройку Customization указанного экземпляра. Это политика UI/подтверждения, не разрешение ОС на файловую операцию.

Параметры
ИмяТипПо умолчанию
flagFileDialog.Customization—
flag

Настройка FileDialog.Customization этого экземпляра.

Возвращает bool

Возвращает настройку Customization указанного экземпляра. Это политика UI/подтверждения, не разрешение ОС на файловую операцию.

IsModeOverridingTitlebool
# IsModeOverridingTitle
C#
public bool IsModeOverridingTitle();

Старый флаг: setter ничего не делает, getter возвращает true. Для своего заголовка задайте Title; в установленном SDK пользовательский Title сохраняется при смене FileMode.

Возвращает bool

Старый флаг: setter ничего не делает, getter возвращает true. Для своего заголовка задайте Title; в установленном SDK пользовательский Title сохраняется при смене FileMode.

IsShowingHiddenFilesbool
# IsShowingHiddenFiles
C#
public bool IsShowingHiddenFiles();

Показывать скрытые элементы во встроенном списке, false по умолчанию. Не переключает FileMode и не выдаёт права доступа к скрытым/защищённым файлам.

Возвращает bool

Показывать скрытые элементы во встроенном списке, false по умолчанию. Не переключает FileMode и не выдаёт права доступа к скрытым/защищённым файлам.

PopupFileDialogvoid
# PopupFileDialog
C#
public void PopupFileDialog();

Открывает диалог со штатным размером/ограничением относительно viewport. До вызова задайте режим, область, фильтры и обработчики выбора. Может использовать системный backend; сам файл не читает/не пишет.

SetAccessvoid
# SetAccess
C#
public void SetAccess(FileDialog.AccessEnum access);

Область навигации: Resources (asset://), Userdata (user://) или Filesystem. По умолчанию Resources. Не выдаёт права ОС; смена сбрасывает RootSubfolder и состояние каталога следует настроить заново.

Параметры
ИмяТипПо умолчанию
accessFileDialog.AccessEnum—
access

Resources, Userdata или Filesystem под требуемую область пути.

SetCurrentDirvoid
# SetCurrentDir
C#
public void SetCurrentDir(string dir);

Текущий каталог, не выбранный файл. Предпочитайте явный путь asset://, user:// или абсолютный путь под выбранный Access. Setter не создаёт каталог и не означает успешное подтверждение.

Параметры
ИмяТипПо умолчанию
dirstring—
dir

Каталог под выбранным Access; в DirSelected — подтверждённый каталог.

SetCurrentFilevoid
# SetCurrentFile
C#
public void SetCurrentFile(string file);

Текст поля имени, обычно без каталога. Не загружает и не создаёт файл, не испускает FileSelected. Для полного пути используйте CurrentPath.

Параметры
ИмяТипПо умолчанию
filestring—
file

Имя файла в текущем каталоге; для полного пути используйте CurrentPath.

SetCurrentPathvoid
# SetCurrentPath
C#
public void SetCurrentPath(string path);

Объединение CurrentDir и CurrentFile. Setter полного пути задаёт каталог и имя; путь без разделителя меняет только имя, пустая строка — no-op. Не является доказательством существования файла.

Параметры
ИмяТипПо умолчанию
pathstring—
path

Путь в области выбранного Access; сигнал выбора не подтверждает успешную операцию I/O.

SetCustomizationFlagEnabledvoid
# SetCustomizationFlagEnabled
C#
public void SetCustomizationFlagEnabled(FileDialog.Customization flag, bool enabled);

Меняет указанную настройку UI/подтверждения. Не выполняет операцию с файлами, не меняет модель приложения и не выдаёт права ОС.

Параметры
ИмяТипПо умолчанию
flagFileDialog.Customization—
enabledbool—
flag

Настройка FileDialog.Customization этого экземпляра.

enabled

Включить указанную политику UI/подтверждения.

SetDisplayModevoid
# SetDisplayMode
C#
public void SetDisplayMode(FileDialog.DisplayModeEnum mode);

Вид встроенного списка: Thumbnails или List. Не меняет FileMode, Access и результат чтения файла. Наличие качественной миниатюры зависит от настроенного источника миниатюр.

Параметры
ИмяТипПо умолчанию
modeFileDialog.DisplayModeEnum—
mode

FileModeEnum для режима выбора либо DisplayModeEnum для вида списка, согласно типу параметра.

SetFavoriteList2 перегрузки
# SetFavoriteList · 1/2
C#
public static void SetFavoriteList(ReadOnlySpan<string> favorites);

Заменяет общий для FileDialog список избранных каталогов процесса; вызывайте в главном потоке. Добавляет завершающий /. Не отдельный список экземпляра и не автоматическое сохранение на диск. Список UI обновляется отдельно.

Параметры
ИмяТипПо умолчанию
favoritesReadOnlySpan<string>—
favorites

Новый общий список каталогов избранного, используемый из главного потока.

# SetFavoriteList · 2/2
C#
public static void SetFavoriteList(string[] favorites);

Заменяет общий для FileDialog список избранных каталогов процесса; вызывайте в главном потоке. Добавляет завершающий /. Не отдельный список экземпляра и не автоматическое сохранение на диск. Список UI обновляется отдельно.

Параметры
ИмяТипПо умолчанию
favoritesstring[]—
favorites

Новый общий список каталогов избранного, используемый из главного потока.

SetFileModevoid
# SetFileMode
C#
public void SetFileMode(FileDialog.FileModeEnum mode);

Режим выбора: OpenFile, OpenFiles, OpenDir, OpenAny или SaveFile. SaveFile по умолчанию. Меняет стандартные подписи/тип выделения, не выполняет файловую операцию; пользовательский Title сохраняется.

Параметры
ИмяТипПо умолчанию
modeFileDialog.FileModeEnum—
mode

FileModeEnum для режима выбора либо DisplayModeEnum для вида списка, согласно типу параметра.

SetFileNameFiltervoid
# SetFileNameFilter
C#
public void SetFileNameFilter(string filter);

Поисковый текст имён во встроенном списке, отдельно от масок расширений Filters. При выключенной строке поиска setter сбрасывает запрос. Для постоянного ограничения расширений используйте Filters. Не считайте аргумент FileNameFilterChanged надёжным: в установленном Runtime есть несовпадение типа.

Параметры
ИмяТипПо умолчанию
filterstring—
filter

Поисковый запрос; в FileNameFilterChanged аргумент SDK недостоверен из-за несовпадения нативного типа.

SetFilters2 перегрузки
# SetFilters · 1/2
C#
public void SetFilters(ReadOnlySpan<string> filters);

Массив строк маска ; подпись ; MIME, последние части необязательны. Несколько масок в группе разделяются запятой. Getter возвращает копию; setter заменяет список, не валидируя содержимое файлов.

Параметры
ИмяТипПо умолчанию
filtersReadOnlySpan<string>—
filters

Полный заменяющий массив групп маска ; подпись ; MIME.

# SetFilters · 2/2
C#
public void SetFilters(string[] filters);

Массив строк маска ; подпись ; MIME, последние части необязательны. Несколько масок в группе разделяются запятой. Getter возвращает копию; setter заменяет список, не валидируя содержимое файлов.

Параметры
ИмяТипПо умолчанию
filtersstring[]—
filters

Полный заменяющий массив групп маска ; подпись ; MIME.

SetGetIconCallbackvoid
# SetGetIconCallback
C#
public static void SetGetIconCallback(Callable callback);

Устанавливает общий статический поставщик иконок для встроенных FileDialog: Callable получает один string пути и возвращает Texture2D либо null для fallback. Не настройка одного экземпляра. Не захватывайте короткоживущий диалог; управляйте сроком жизни поставщика на уровне приложения.

Параметры
ИмяТипПо умолчанию
callbackCallable—
callback

Общий Callable: путь string → Texture2D либо null для fallback.

SetGetThumbnailCallbackvoid
# SetGetThumbnailCallback
C#
public static void SetGetThumbnailCallback(Callable callback);

Общий статический поставщик миниатюр: один string пути → Texture2D либо null для стандартного fallback. Работает во встроенном режиме Thumbnails, не гарантирует миниатюры системного окна. Кэшируйте готовые изображения; не блокируйте UI тяжёлой генерацией в callback.

Параметры
ИмяТипПо умолчанию
callbackCallable—
callback

Общий Callable: путь string → Texture2D либо null для fallback.

SetModeOverridesTitlevoid
# SetModeOverridesTitle
C#
public void SetModeOverridesTitle(bool @override);

Старый флаг: setter ничего не делает, getter возвращает true. Для своего заголовка задайте Title; в установленном SDK пользовательский Title сохраняется при смене FileMode.

Параметры
ИмяТипПо умолчанию
overridebool—
override

Не действует; устаревший setter сохраняет getter true.

SetOptionCountvoid
# SetOptionCount
C#
public void SetOptionCount(int count);

Количество дополнительных настроек. Уменьшение сохраняет префикс списка; увеличение создаёт пустые записи, которым нужно задать уникальные имена, values и default. Изменение может пересоздать UI и сбросить текущие ответы к defaults.

Параметры
ИмяТипПо умолчанию
countint—
count

Неотрицательное число записей дополнительных настроек.

SetOptionDefaultvoid
# SetOptionDefault
C#
public void SetOptionDefault(int option, int defaultValueIndex);

Задаёт default с ограничением 0…1 для checkbox или 0…values.Length-1 для списка. Принимает отрицательный индекс настройки; не используйте как тихое изменение одного текущего ответа в открытом диалоге.

Параметры
ИмяТипПо умолчанию
optionint—
defaultValueIndexint—
option

Индекс настройки; SetOption* принимает отрицательный индекс с конца, getters требуют обычный допустимый.

defaultValueIndex

Default: 0/1 для checkbox либо индекс варианта, ограничиваемый диапазоном.

SetOptionNamevoid
# SetOptionName
C#
public void SetOptionName(int option, string name);

Меняет ключ/подпись настройки; принимает отрицательный индекс с конца. Пересоздание контролов может сбросить текущие ответы: настройте схему до открытия.

Параметры
ИмяТипПо умолчанию
optionint—
namestring—
option

Индекс настройки; SetOption* принимает отрицательный индекс с конца, getters требуют обычный допустимый.

name

Уникальный стабильный ключ/подпись дополнительной настройки.

SetOptionValues2 перегрузки
# SetOptionValues · 1/2
C#
public void SetOptionValues(int option, ReadOnlySpan<string> values);

Заменяет варианты, копируя массив; пустой массив переключает настройку в checkbox. Сохранённый default ограничивается новым диапазоном. Принимает отрицательный индекс; может пересоздать UI.

Параметры
ИмяТипПо умолчанию
optionint—
valuesReadOnlySpan<string>—
option

Индекс настройки; SetOption* принимает отрицательный индекс с конца, getters требуют обычный допустимый.

values

Массив вариантов; пустой задаёт checkbox. Копируется.

# SetOptionValues · 2/2
C#
public void SetOptionValues(int option, string[] values);

Заменяет варианты, копируя массив; пустой массив переключает настройку в checkbox. Сохранённый default ограничивается новым диапазоном. Принимает отрицательный индекс; может пересоздать UI.

Параметры
ИмяТипПо умолчанию
optionint—
valuesstring[]—
option

Индекс настройки; SetOption* принимает отрицательный индекс с конца, getters требуют обычный допустимый.

values

Массив вариантов; пустой задаёт checkbox. Копируется.

SetRecentList2 перегрузки
# SetRecentList · 1/2
C#
public static void SetRecentList(ReadOnlySpan<string> recents);

Заменяет общий список недавних каталогов процесса из главного потока, добавляя завершающий /. Не перезаписывает пользовательский файл настроек сам по себе.

Параметры
ИмяТипПо умолчанию
recentsReadOnlySpan<string>—
recents

Новый общий список недавних каталогов, используемый из главного потока.

# SetRecentList · 2/2
C#
public static void SetRecentList(string[] recents);

Заменяет общий список недавних каталогов процесса из главного потока, добавляя завершающий /. Не перезаписывает пользовательский файл настроек сам по себе.

Параметры
ИмяТипПо умолчанию
recentsstring[]—
recents

Новый общий список недавних каталогов, используемый из главного потока.

SetRootSubfoldervoid
# SetRootSubfolder
C#
public void SetRootSubfolder(string dir);

Существующий каталог, ограничивающий навигацию встроенного UI в текущей области Access. Пустая строка снимает настройку; смена Access сбрасывает её. Не создаёт каталог и не является границей безопасности для собственного FileAccess — проверяйте конечный путь отдельно.

Параметры
ИмяТипПо умолчанию
dirstring—
dir

Существующий каталог в выбранной области Access; пустая строка снимает настройку корня.

SetShowHiddenFilesvoid
# SetShowHiddenFiles
C#
public void SetShowHiddenFiles(bool show);

Показывать скрытые элементы во встроенном списке, false по умолчанию. Не переключает FileMode и не выдаёт права доступа к скрытым/защищённым файлам.

Параметры
ИмяТипПо умолчанию
showbool—
show

Показывать скрытые элементы списка.

SetUseNativeDialogvoid
# SetUseNativeDialog
C#
public void SetUseNativeDialog(bool native);

Запрос системного окна при поддержке нужных возможностей платформой. false не гарантирует встроенный UI в sandbox ОС; true не гарантирует поддержку произвольных добавленных Control. Настраивайте до открытия.

Параметры
ИмяТипПо умолчанию
nativebool—
native

Запрос системного backend; применяйте до открытия.

Сигналы и события4

DirSelectedСобытие
# DirSelected
C#
public event FileDialog.DirSelectedEventHandler DirSelected;

Принят каталог при OpenDir или каталоговый результат OpenAny. Это каталог, не имя для записи файла; FileDialog его не создаёт по факту сигнала.

Параметры обработчика
ИмяТипПо умолчанию
dirstring—
dir

Каталог под выбранным Access; в DirSelected — подтверждённый каталог.

FileNameFilterChangedСобытие
# FileNameFilterChanged
C#
public event FileDialog.FileNameFilterChangedEventHandler FileNameFilterChanged;

Ограничение Runtime/SDK 1.0.0: нативный сигнал передаёт объект OptionButton, хотя SDK объявляет string. Не используйте filter как текст. Рабочий обход: Connect(FileDialog.SignalName.FileNameFilterChanged, Callable.From<Variant>(handler)), где handler игнорирует payload и читает FileNameFilter у диалога. Сохраните Callable для Disconnect.

Параметры обработчика
ИмяТипПо умолчанию
filterstring—
filter

Поисковый запрос; в FileNameFilterChanged аргумент SDK недостоверен из-за несовпадения нативного типа.

FileSelectedСобытие
# FileSelected
C#
public event FileDialog.FileSelectedEventHandler FileSelected;

Подтверждён один путь: OpenFile, файловый результат OpenAny либо SaveFile. При SaveFile путь может ещё не существовать. Сигнал не означает успешное чтение или запись — выполните и проверьте операцию отдельно.

Параметры обработчика
ИмяТипПо умолчанию
pathstring—
path

Путь в области выбранного Access; сигнал выбора не подтверждает успешную операцию I/O.

FilesSelectedСобытие
# FilesSelected
C#
public event FileDialog.FilesSelectedEventHandler FilesSelected;

Принят массив путей при OpenFiles. Проверьте каждый путь/файл отдельно; изменение настроек или CurrentPath этот сигнал не испускает.

Параметры обработчика
ИмяТипПо умолчанию
pathsstring[]—
paths

Массив принятых путей OpenFiles.

FileDialog.AccessEnum

ЗначениеОписание
Filesystem = 2

Диалоговое окно позволяет получить доступ к файлам во всей файловой системе.

Resources = 0

Диалоговое окно позволяет получить доступ только к файлам, находящимся по пути Resource (asset://).

Userdata = 1

Диалоговое окно позволяет получить доступ только к файлам, находящимся по пути к данным пользователя (user://).

FileDialog.Customization

ЗначениеОписание
CreateFolder = 1

Если включено, отображает кнопку для создания новых каталогов (при использовании FileDialog.FileModeEnum.OpenDir, FileDialog.FileModeEnum.OpenAny или FileDialog.FileModeEnum.SaveFile). Эквивалентно FileDialog.FolderCreationEnabled.

Delete = 8

Если эта опция включена, в контекстном меню отобразится пункт «Удалить», позволяющий перемещать файлы и папки в корзину. Эквивалентно FileDialog.DeletingEnabled.

DriveSelector = 10

Если установлен, показывает, что выбранный привод выпадает рядом с текущей траекторией. Эквивалентность FileDialog.DriveSelectorEnabled.

Favorites = 4

Если включено, в левой части диалогового окна отображается кнопка переключения избранного и список избранного. Эквивалентно FileDialog.FavoritesEnabled.

FileFilter = 2

Если включено, отображается кнопка переключения фильтра файлов. Эквивалентно FileDialog.FileFilterToggleEnabled.

FileSort = 3

Если включено, отображает кнопку параметров сортировки файлов. Эквивалентно FileDialog.FileSortOptionsEnabled.

Filters = 11

Если включена, покажите, что фильтр расширения файла сбрасывается рядом с именем файла. Эквивалентность FileDialog.FiltersEnabled.

HiddenFiles = 0

Если включена, покажите кнопку скрытых файлов. Эквивалентность FileDialog.HiddenFilesToggleEnabled.

Layout = 6

Если включено, отображаются кнопки переключения макета (список/миниатюры). Эквивалентно FileDialog.LayoutToggleEnabled.

NavigationButtons = 9

Если включена, покажите назад/вперёд кнопки на панели инструментов. Эквивалентность FileDialog.NavigationButtonsEnabled.

OverwriteWarning = 7

Если включено, FileDialog предупредит пользователя перед перезаписью файлов в режиме сохранения. Эквивалентно FileDialog.OverwriteWarningEnabled.

Recent = 5

Если включено, отображает список последних каталогов в левой части диалогового окна. Эквивалентно FileDialog.RecentListEnabled.

FileDialog.DisplayModeEnum

ЗначениеОписание
List = 1

В диалоговом окне файлы отображаются в виде списка имен файлов.

Thumbnails = 0

Диалог отображает файлы в виде сетки миниатюр. Используйте FileDialog.thumbnail_size для настройки их размера.

СПИСОК

FileDialog.FileModeEnum

ЗначениеОписание
OpenAny = 3

Диалог позволяет выбрать один файл или каталог.

OpenDir = 2

В диалоговом окне можно выбрать только каталог, но не файл.

OpenFile = 0

Диалоговое окно позволяет выбрать один и только один файл.

OpenFiles = 1

Диалоговое окно позволяет выбрать несколько файлов.

SaveFile = 4

Диалоговое окно выдаст предупреждение, если файл уже существует.

ДОСТУП К ИСТОЧНИКАМ

Свойства темы

Это ключи ресурсов Theme, а не свойства C# класса. Используйте методы GetTheme…() и AddTheme…Override() у Control с соответствующим типом значения.

Ключ и типОписание
file_disabled_color
Color

Цветовой оттенок для отключенных файлов (когда FileDialog используется в режиме открытой папки).

По умолчанию: Color(1, 1, 1, 0.25)
file_icon_color
Color

Цветовая модуляция, примененная к значку файла.

По умолчанию: Color(1, 1, 1, 1)
folder_icon_color
Color

Цветовая модуляция, примененная к значку папки.

По умолчанию: Color(1, 1, 1, 1)
thumbnail_size
int

Размер миниатюрных значков, когда включен FileDialog.DisplayModeEnum.Thumbnails.

По умолчанию: 64
back_folder
Texture2D

Пользовательский значок для стрелки «назад».

create_folder
Texture2D

Пользовательский значок для кнопки создания папки.

favorite
Texture2D

Пользовательский значок для кнопки избранной папки.

favorite_down
Texture2D

Пользовательский значок для кнопки перемещения вниз по избранной записи.

favorite_up
Texture2D

Пользовательский значок для кнопки перемещения избранной записи вверх.

file
Texture2D

Пользовательский значок для файлов.

file_thumbnail
Texture2D

Значок для файлов в режиме миниатюр.

folder
Texture2D

Пользовательский значок для папок.

folder_thumbnail
Texture2D

Значок для папок в режиме миниатюр.

forward_folder
Texture2D

Пользовательский значок для стрелки "вперед".

list_mode
Texture2D

Значок кнопки, включающей режим списка.

menu_copy_path
Texture2D

Значок для пункта контекстного меню «Копировать путь».

menu_delete
Texture2D

Значок для пункта контекстного меню «Удалить».

menu_new_folder
Texture2D

Значок для пункта контекстного меню "Создать папку...". Обычно он должен совпадать с FileDialog.create_folder; оставьте его пустым, если хотите, чтобы в контекстном меню не отображались значки.

menu_open_bundle
Texture2D

Значок для пункта контекстного меню «Показать содержимое пакета». Этот пункт отображается только для пакетов macOS.

menu_refresh
Texture2D

Значок для пункта контекстного меню «Обновить». Обычно он должен совпадать с FileDialog.reload; оставьте его пустым, если хотите, чтобы в контекстном меню не отображались значки.

menu_show_in_file_manager
Texture2D

Значок для пункта контекстного меню «Показать в файловом менеджере».

parent_folder
Texture2D

Пользовательский значок для стрелки родительской папки.

reload
Texture2D

Пользовательский значок для кнопки "Обновить".

sort
Texture2D

Пользовательский значок для меню параметров сортировки.

thumbnail_mode
Texture2D

Значок кнопки, включающей режим миниатюр.

toggle_filename_filter
Texture2D

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

toggle_hidden
Texture2D

Пользовательский значок для кнопки переключения скрытой информации.

Документация Reckfell EngineНаверх ↑
БЫСТРЫЙ ПЕРЕХОДНачало работыEntity и иерархияC# & .NET 10Сцены и префабы
Руководства и полный API Reckfell K
reckfellENGINE
RECKFELL ACCOUNT

Вход в аккаунт

Войдите в аккаунт Reckfell.

Один аккаунт для всей платформы Reckfell.