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;
// 处理文件保存逻辑
}