WPF常用控件-选择文件与保存文件窗口

OpenFileDialog

OpenFileDialog类型位于Microsoft.Win32命名空间下,用于在WPF中弹出文件选择窗口进行文件的选择。

csharp 复制代码
private void DoSelectFiles()
{
    OpenFileDialog openFileDialog = new OpenFileDialog();
    openFileDialog.Multiselect = true;
    if (openFileDialog.ShowDialog() == true)
    {
        if (openFileDialog.FileNames != null && openFileDialog.FileNames.Length > 0)
        {
            for (int i = 0; i < openFileDialog.FileNames.Length; i++)
            {
                ......
            }
        }
    }
}

常用属性

Filter:过滤器,可以设置可以选择的文件类型。

csharp 复制代码
openFileDialog.Filter = "Text files (*.txt)|*.txt|All files (*.*)|*.*"

InitialDirectory:文件选择框的初始目录。

csharp 复制代码
openFileDialog.InitialDirectory = @"d:\";

Multiselect:是否支持多选。

csharp 复制代码
openFileDialog.Multiselect = true;

FileName`FileNames`:所选文件的文件名。

常用方法

bool ShowDialog([Window owner]):展示选择文件框,可以通过传参来指定父类窗体,当确定选择时,返回true,当直接关闭窗口时返回false

Stream OpenFile():打开并返回所选文件的流对象。

Stream[] OpenFiles():打开并返回所选文件的流对象集合。

SaveFileDialog

SaveFileDialog类型位于Microsoft.Win32命名空间下,用于在WPF中弹出进行文件保存的路径选择及保存文件名称、文件类型的设置窗口。

其用法跟OpenFileDialog大同小异。

csharp 复制代码
SaveFileDialog saveFileDialog = new SaveFileDialog();
saveFileDialog.Title = "保存文件"; // 设置对话框标题
saveFileDialog.FileName = "myfile.txt"; // 设置默认文件名
saveFileDialog.DefaultExt = ".txt"; // 设置默认文件扩展名
saveFileDialog.Filter = "Text files (*.txt)|*.txt|All files (*.*)|*.*"; // 设置文件类型过滤器
saveFileDialog.InitialDirectory = @"C:\"; // 设置初始目录

bool? result = saveFileDialog.ShowDialog();

if (result == true)
{
    string filePath = saveFileDialog.FileName;
    // 处理文件保存逻辑
}
相关推荐
one9964 小时前
WPF应用程序中的异常处理
c#·.net·wpf
somethingGoWay1 天前
wpf .netcore 导出docx文件
wpf·.netcore
somethingGoWay1 天前
wpf .netcore 导出pdf文件
pdf·wpf·.netcore
self_myth2 天前
[特殊字符] 深入理解操作系统核心特性:从并发到分布式,从单核到多核的全面解析
windows·macos·wpf·harmonyos
c#上位机2 天前
wpf之TextBlock
c#·wpf
玉面小君4 天前
从 WPF 到 Avalonia 的迁移系列实战篇6:ControlTheme 和 Style区别
c#·wpf·avalonia
c#上位机4 天前
wpf之Border
c#·wpf
SunflowerCoder4 天前
WPF迁移avalonia之图像处理(一)
图像处理·wpf·avalonia
周杰伦fans4 天前
WPF中的DataContext以及常见的绑定方式
wpf
没有bug.的程序员5 天前
Redis 数据结构全面解析:从底层编码到实战应用
java·数据结构·redis·wpf