事件
本文列出了特定于所有RadFileDialog控件的事件。
PreviewClosed:对话框关闭时发生此事件。事件参数是类型的WindowPreviewClosedEventArgs.您可以使用参数取消事件。
例1:取消对话框关闭
private void OnFileDialogPreviewClosed(对象发送者,WindowPreviewClosedEventArgs e) {e. cancel = true;}
关闭:对话框关闭时发生此事件。事件参数是类型的WindowClosedEventArgs.
ExceptionRaised:当引发异常时发生此事件。此事件可能在不同的情况下引发,例如,如果无法访问所选文件夹或文件路径太长,或在搜索时出现错误,等等。
例2:在出现错误时显示警报
private void OnFileDialogExceptionRaised(对象发送者,FileBrowserExceptionRaisedEventArgs e) {MessageBox.Show(e.m eexception . message);}
DirectoryRequesting:此事件可用于过滤导航RadTreeView和RadBreadcrumb或任何自定义的地方都是加进去的。下面的例子演示了如何过滤掉“D:\”和“K:\”目录:
例3:过滤D和K目录
private void OnFileDialogDirectoryRequesting(对象发送者,Telerik.Windows.Controls.FileDialogs.DirectoryRequestingEventArgs e) {if (e. directory . fullname . startswith ("D:\\") || e. directory . fullname . startswith ("K:\\")) {e. cancel = true;}}
如果InitialDirectory的RadFileDialog被过滤掉示例3,加载时的当前目录将是默认目录。
图1:未过滤的目录
图2:基于示例3的过滤目录
DirectoryNavigating:当前文件夹即将更改时发生此事件。您可以使用它来执行附加操作或取消导航。
例4:禁用到Program Files文件夹的导航
private void onfiledialogdirectorynavigation(对象发送者,telerink . windows . controls . filedialogs . directorynavigatingeventargs e) {if (e. directorypath == "C:\\Program Files") {e. cancel = true;}}
ShellContextMenuOpening:当上下文菜单即将打开时发生此事件。您可以使用它取消菜单打开或从短菜单中添加/删除选项(当光标位于资源管理器中的空白位置时打开的菜单)。
例5:取消上下文菜单的打开,只在短菜单中添加新建文件夹和粘贴选项
private void OnFileDialogShellContextMenuOpening(对象发送者,telererik . windows . controls . filedialogs . contextmenuopeningeventargs e) {if (e. selectedfiles . selectedfiles . openingeventargs。计数> 0 && e.SelectedFiles[0]。Path == "C:\\Program Files") {e.Cancel = true;} else {e.ShortContextMenuOptions = ShortContextMenuOptions。粘贴| ShortContextMenuOptions.NewFolder;}}
与ShellContextMenuOpening事件处理程序一起提供的ContextMenuOpeningEventArgs的附加特性是IsOpeningOnEmptySpace财产。您可以使用它来确定鼠标是单击了文件/文件夹还是单击了文件列表中的空白区域。
例6:检查点击是否在空白区域
private void OnFileDialogShellContextMenuOpening(对象发送者,telererik . windows . controls . filedialogs . contextmenuopeningeventargs e) {if (e.s openingonemptyspace) {// do something}}
重命名:当文件或文件夹即将重命名时发生此事件。您可以使用它来防止某些文件或文件夹的名称被更改。
事件参数的类型为RenamingEventArgs它公开了以下属性:
- 取消:布尔属性,指示是否执行重命名操作。
- FileInfo:类型的属性FileSystemInfoWrapper.此属性包含FileSystemInfoWrapper对象获取要重命名的文件系统信息。
此事件仅当CanUserRename属性设置为真正的.
例7:取消某个文件/目录的重命名操作
private void onfiledialgrenaming(对象发送器,Telerik.Windows.Controls.FileDialogs.RenamingEventArgs e) {if (e.f ilfileinfo . path . startswith ("C:\Windows") {e.c ilfileinfo . path . startswith = true;}}
另请参阅
- 开始
- RadOpenFileDialog
- RadOpenFolderDialog
- RadSaveFileDialog