WPF文件选择

1.选择文件的后台代码:

在wpf框架中使用文件框选择文件比较容易实现,可以直接使用Microsoft.Win32.OpenFIleDialog类,后台代码如下:

// 实例化一个文件选择对象
Microsoft.Win32.OpenFileDialog dialog = new Microsoft.Win32.OpenFileDialog();
dialog.DefaultExt = ".png";  // 设置默认类型
// 设置可选格式
dialog.Filter = @"图像文件(*.jpg,*.png,*.tif,*.gif)|*jpeg;*.jpg;*.png;*.tif;*.tiff;*.gif
      |JPEG(*.jpeg, *.jpg)|*.jpeg;*.jpg|PNG(*.png)|*.png|GIF(*.gif)|*.gif
      |TIF(*.tif,*.tiff)|*.tif;*.tiff";
// 打开选择框选择
Nullable<bool> result = dialog.ShowDialog();
if(result == true) {
  string file = dialog.FileName; // 获取选择的文件名
}

DefaultExt 属性设置的是文件选择的默认类型;Filter属性设置的是文件对话框中的可选文件类型(要注意写法);ShowDialog()方法是弹出文件对话框,该方法返回一个布尔值,成功选择文件就返回true,否则返回false;FileName属性的值为对话框选择的文件绝对路径名。

2.选择文件夹

在Winform中使用System.Windows.Forms.OpenFileDialog类选择文件,System.Windows.Forms.FolderBrowserDialog类选择文件夹。而在WPF中,使用Microsoft.Win32.OpenFileDialog只能选择文件,FolderBrowserDialog只能用树型的方式选择文件夹,很不好用;我们可以通过添加winform的引用,在wpf中引用winfom,using System.Windows.Forms; 但是我更喜欢另外一个工具:Windows API Code Pack

第一步:打开VS的程序包管理器控制台
在这里插入图片描述

第二步:输入Install-Package WindowsAPICodePack-Shell获取包

> Install-Package WindowsAPICodePack-Shell

第三步:后台代码

using Microsoft.WindowsAPICodePack.Dialogs;
...
...{
  // 实例化一个文件夹选择对象
  CommonOpenFileDialog dialog = new CommonOpenFileDialog();
  dialog.IsFolderPicker = true; // 只选择文件夹(false时只选择文件)
  CommonFileDialogResult result = dialog.ShowDialog(); // 打开选择框
  if(CommonFileDialogResult.Ok == result) {
    var files = Directory.GetFiles(dialog.FileName, "*.*", SearchOption.AllDirectories).Where(
        s => s.EndsWith(".jpg") || s.EndsWith(".jpeg") || s.EndsWith(".png") || 
        s.EndsWith(".tif") || s.EndsWith(".tiff") || s.EndsWith(".gif") ||
        s.EndsWith(".bmp"));
}

dialog.FileName为选择的文件夹名,Directory.GetFiles获取的是符合条件的文件(注意写法)

WPF(Windows Presentation Foundation)是一种用于构建 Windows 应用程序的框架。WPF 提供了许多自定义控件和样式,方便开发人员根据自己的需求定制界面。下面将以300字回答WPf自定义文件选择框的相关内容。 WPF提供了一个名为OpenFileDialog的类,用于打开文件选择对话框,但是该默认对话框的外观和功能可能无法满足特定需求。因此,我们可以使用WPF的自定义控件和样式来定制文件选择框。 首先,我们可以使用自定义的用户控件来构建文件选择框。用户控件可以包含一个TextBox用于显示选择文件路径,以及一个Button用于触发文件选择对话框。通过绑定TextBox和Button的命令,我们可以实现当用户点击Button时弹出选择文件对话框,并将选择文件路径显示在TextBox中。 其次,我们可以使用样式来美化文件选择框的外观。WPF的样式允许我们修改控件的外观和行为。我们可以通过修改背景颜色、边框样式、字体大小等属性,来定制文件选择框的外观。另外,通过添加动画效果和图片等元素,可以进一步增加文件选择框的吸引力。 最后,我们还可以为文件选择框添加一些附加功能,以增强用户体验。例如,可以为文件选择框增加文件类型过滤器,只显示特定类型的文件。还可以为文件选择框增加多选功能,允许用户选择多个文件。此外,可以自定义文件选择框的标题、按钮文本等内容,让界面更加友好。 总之,通过WPF的自定义控件、样式和功能扩展,我们可以实现一个美观、灵活、易用的自定义文件选择框,以满足不同应用场景的需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值