当前位置: 首页 > news >正文

C# 第六章『交互式图形界面』◆第5节:FolderBrowserDialog类、DialogResult枚举

        一、FolderBrowserDialog 类

FolderBrowserDialog 类https://docs.microsoft.com/zh-cn/dotnet/api/system.windows.forms.folderbrowserdialog?view=netframework-4.0

        1、定义

        提示用户选择文件夹。 此类不能被继承。

  • 命名空间:System.Windows.Forms
  • 程序集:System.Windows.Forms.dll
  • 继承:Object→MarshalByRefObject→Component→CommonDialog→FolderBrowserDialog
public sealed class FolderBrowserDialog : System.Windows.Forms.CommonDialog

        2、FolderBrowserDialog 类的构造函数

FolderBrowserDialog() 初始化 FolderBrowserDialog 类的新实例。

        3、FolderBrowserDialog 类的属性

CanRaiseEvents 获取一个指示组件是否可以引发事件的值。(继承自 Component)
Container 获取包含 IContainer 的 Component。(继承自 Component)
Description 获取或设置对话框中在树视图控件上显示的说明文本。
DesignMode 获取一个值,用以指示 Component 当前是否处于设计模式。(继承自 Component)
Events 获取附加到此 Component 的事件处理程序的列表。(继承自 Component)
RootFolder 获取或设置从其开始浏览的根文件夹。
SelectedPath 获取或设置用户选定的路径。
ShowNewFolderButton 获取或设置一个值,该值指示“新建文件夹”按钮是否显示在文件夹浏览对话框中。
Site 获取或设置 Component 的 ISite。(继承自 Component)
Tag 获取或设置一个对象,该对象包含控件的数据。(继承自 CommonDialog)

        4、FolderBrowserDialog 类的方法

CreateObjRef(Type) 创建一个对象,该对象包含生成用于与远程对象进行通信的代理所需的全部相关信息。(继承自 MarshalByRefObject)
Dispose() 释放由 Component 使用的所有资源。(继承自 Component)
Dispose(Boolean) 释放由 Component 占用的非托管资源,还可以另外再释放托管资源。(继承自 Component)
Equals(Object) 确定指定对象是否等于当前对象。(继承自 Object)
GetHashCode() 作为默认哈希函数。(继承自 Object)
GetLifetimeService() 检索控制此实例的生存期策略的当前生存期服务对象。(继承自 MarshalByRefObject)
GetService(Type) 返回一个对象,该对象表示由 Component 或它的 Container 提供的服务。(继承自 Component)
GetType() 获取当前实例的 Type。(继承自 Object)
HookProc(IntPtr, Int32, IntPtr, IntPtr) 定义要重写的通用对话框挂钩过程,以便向通用对话框添加特定功能。(继承自 CommonDialog)
InitializeLifetimeService() 获取生存期服务对象来控制此实例的生存期策略。(继承自 MarshalByRefObject)
MemberwiseClone() 创建当前 Object 的浅表副本。(继承自 Object)
MemberwiseClone(Boolean) 创建当前 MarshalByRefObject 对象的浅表副本。(继承自 MarshalByRefObject)
OnHelpRequest(EventArgs) 引发 HelpRequest 事件。(继承自 CommonDialog)
OwnerWndProc(IntPtr, Int32, IntPtr, IntPtr) 定义要重写的所有者窗口过程,以便向通用对话框添加特定功能。(继承自 CommonDialog)
Reset() 将属性重置为其默认值。
RunDialog(IntPtr) 在派生类中被重写时,指定通用对话框。(继承自 CommonDialog)
ShowDialog() 用默认的所有者运行通用对话框。(继承自 CommonDialog)
ShowDialog(IWin32Window) 运行具有指定所有者的通用对话框。(继承自 CommonDialog)
ToString() 返回包含 Component 的名称的 String(如果有)。 不应重写此方法。(继承自 Component)

        4、FolderBrowserDialog 类的事件

Disposed 在通过调用 Dispose() 方法释放组件时发生。(继承自 Component)

HelpRequest 

当用户单击对话框中的“帮助”按钮时发生。

        二、DialogResult 枚举

DialogResult 枚举https://docs.microsoft.com/zh-cn/dotnet/api/system.windows.forms.dialogresult?view=netframework-4.0

        1、定义

        指定标识符以指示对话框的返回值。属性 Button.DialogResultForm.ShowDialog 方法使用此枚举。

  • 命名空间:System.Windows.Forms
  • 程序集:System.Windows.Forms.dll
  • 继承:Object→ValueType→Enum→DialogResult
  • 属性:ComVisibleAttribute
[System.Runtime.InteropServices.ComVisible(true)]
public enum DialogResult

        2、DialogResult 枚举的字段

        三、示例—FolderBrowserDialog类、DialogResult枚举

using System;
using System.Windows.Forms;

namespace _20220901_3
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            FolderBrowserDialog fbd1 = new FolderBrowserDialog();
            fbd1.Description = "请选择一个文件夹(这句话在打开后的对话框上面 ___________^_^  ^v^  ^=^___________)";
            if (fbd1.ShowDialog() == DialogResult.OK || fbd1.ShowDialog() == DialogResult.Yes)
            {
                textBox1.Text = fbd1.SelectedPath;
            }
        }
    }
}

相关文章:

  • 氨基化/环氧化/胺化/羧基化/巯基改性/笼空状磺化聚苯乙烯微球相关制备
  • docker-compose安装mysql主流版本及差异
  • 牛客多校3 - Journey(建图,最短路)
  • python如何实现数据可视化,如何用python做可视化
  • 开源治理的基本实践与指导原则
  • 【APP测试】怎么对App进行功能测试
  • Mybatis-Plus复习
  • 8、JAVA入门——switch选择结构
  • Inno Setup 创建Revit安装包
  • Windows和Linux使用FRP实现内网穿透
  • c++代码如何实现在win/linux下创建编译及部署后台服务,并管理其他服务
  • UI 自动化测试应不应该投入?有没有前途?怎样做最明智?
  • 股票量化交易有什么优势?
  • 元宇宙电商-NFG系统,是如何用数字藏品平台,促进新营销的?
  • thunderbird102编译-环境搭建(1)
  • [nginx文档翻译系列] 控制nginx
  • 「译」Node.js Streams 基础
  • 10个确保微服务与容器安全的最佳实践
  • 4个实用的微服务测试策略
  • echarts花样作死的坑
  • Javascript Math对象和Date对象常用方法详解
  • JS题目及答案整理
  • leetcode讲解--894. All Possible Full Binary Trees
  • tensorflow学习笔记3——MNIST应用篇
  • vue2.0开发聊天程序(四) 完整体验一次Vue开发(下)
  • 阿里云购买磁盘后挂载
  • 从零开始的无人驾驶 1
  • 大整数乘法-表格法
  • 分享自己折腾多时的一套 vue 组件 --we-vue
  • 使用权重正则化较少模型过拟合
  • 由插件封装引出的一丢丢思考
  • 【运维趟坑回忆录】vpc迁移 - 吃螃蟹之路
  • JavaScript 新语法详解:Class 的私有属性与私有方法 ...
  • ​iOS安全加固方法及实现
  • ​LeetCode解法汇总2808. 使循环数组所有元素相等的最少秒数
  • ​中南建设2022年半年报“韧”字当头,经营性现金流持续为正​
  • #我与Java虚拟机的故事#连载08:书读百遍其义自见
  • (2020)Java后端开发----(面试题和笔试题)
  • (Spark3.2.0)Spark SQL 初探: 使用大数据分析2000万KF数据
  • (超详细)语音信号处理之特征提取
  • (二十四)Flask之flask-session组件
  • (附源码)spring boot智能服药提醒app 毕业设计 102151
  • (附源码)ssm高校升本考试管理系统 毕业设计 201631
  • (蓝桥杯每日一题)love
  • (转)VC++中ondraw在什么时候调用的
  • *上位机的定义
  • .“空心村”成因分析及解决对策122344
  • .bat批处理(六):替换字符串中匹配的子串
  • .net core 3.0 linux,.NET Core 3.0 的新增功能
  • .NET Core 中的路径问题
  • .Net 垃圾回收机制原理(二)
  • .NET/C# 使窗口永不激活(No Activate 永不获得焦点)
  • /使用匿名内部类来复写Handler当中的handlerMessage()方法
  • @TableId注解详细介绍 mybaits 实体类主键注解
  • [2013][note]通过石墨烯调谐用于开关、传感的动态可重构Fano超——