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;
    // 处理文件保存逻辑
}
相关推荐
观无3 小时前
关于wpf的自适应
wpf
时光追逐者14 小时前
一款开源免费、通用的 WPF 主题控件包
开源·c#·.net·wpf
甜甜不吃芥末1 天前
Windows 应用程序的 UI 框架:WPF、WinUI 3 和 UWP的差异区别
windows·ui·wpf
界面开发小八哥1 天前
界面组件DevExpress WPF中文教程:Grid - 如何检查节点?
ui·.net·wpf·界面控件·devexpress·ui开发
❀always❀2 天前
深入浅出分布式限流(更新中)
分布式·wpf
深漂阿碉3 天前
WPF打包exe应用的图标问题
wpf
三千道应用题3 天前
WPF学习笔记(26)CommunityToolkit.Mvvm与MaterialDesignThemes
wpf
SEO-狼术5 天前
DevExpress WPF Crack, DevExpress WPF v25.1
wpf
小老鼠爱大米5 天前
C# WPF - Prism 学习篇:搭建项目(一)
c#·wpf·prism
博睿谷IT99_5 天前
Hadoop 分布式存储与计算框架详解
wpf