C#中的对话框

2023-11-12

常用对话框有:
1、文件对话框(FileDialog) 它又常用到两个:
  打开文件对话框(OpenFileDialog)
  保存文件对话(SaveFileDialog)
2、字体对话框(FontDialog)
3、颜色对话框(ColorDialog)
4、打印预浏对话框(PrintPreviewDialog)
5、页面设置(PrintDialog)
6、打印对话框(PrintDialog)

一、打开文件对话框(OpenFileDialog)
1、 OpenFileDialog控件有以下基本属性
InitialDirectory 对话框的初始目录
Filter 要在对话框中显示的文件筛选器,例如,"文本文件(*.txt)|*.txt|所有文件(*.*)||*.*"
FilterIndex 在对话框中选择的文件筛选器的索引,如果选第一项就设为1
RestoreDirectory 控制对话框在关闭之前是否恢复当前目录
FileName 获取或设置一个包含在文件对话框中选定的文件名的字符串。
Title 将显示在对话框标题栏中的字符
AddExtension 是否自动添加默认扩展名
CheckPathExists 在对话框返回之前,检查指定路径是否存在
DefaultExt 默认扩展名
DereferenceLinks 在从对话框返回前是否取消引用快捷方式
ShowHelp 启用"帮助"按钮
ValiDateNames 控制对话框检查文件名中是否不含有无效的字符或序列
2、 OpenFileDialog控件有以下常用事件
FileOk 当用户点击"打开"或"保存"按钮时要处理的事件
HelpRequest 当用户点击"帮助"按钮时要处理的事件
3、 示例
以下示例创建一个 OpenFileDialog,设置几个属性,并用 ShowDialog 来显示对话框。该示例假定窗体上放置了一个 Button,并在其中添加了 System.IO 命名空间。
protected void button1_Click(object sender, System.EventArgs e)
{ OpenFileDialog openFileDialog1 = new OpenFileDialog();
openFileDialog1.InitialDirectory = "c://" ;
openFileDialog1.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*" ;
openFileDialog1.FilterIndex = 2 ;
openFileDialog1.RestoreDirectory = true ;
if(openFileDialog1.ShowDialog() == DialogResult.OK)
{
if(openFileDialog1.FileName!= "")
{
MessageBox.Show("你选择了"+openFileDialog1.FileName);
}
}
}

二、保存文件对话框(SaveFileDialog)
1、SaveFileDialog控件的属性
Filter 要在对话框中显示的文件筛选器,例如,"文本文件(*.txt)|*.txt|所有文件(*.*)|*.*"
FilterIndex 在对话框中选择的文件筛选器的索引,如果选第一项就设为1
RestoreDirectory 控制对话框在关闭之前是否恢复当前目录
AddExtension 是否自动添加默认扩展名
CheckFileExists 获取或设置一个值,该值指示如果用户指定不存在的文件名,对话框是否显示警告。
CheckPathExists 在对话框返回之前,检查指定路径是否存在
Container 控制在将要创建文件时,是否提示用户。只有在ValidateNames为真值时,才适用。
DefaultExt 缺省扩展名
DereferenceLinks 在从对话框返回前是否取消引用快捷方式
FileName 获取或设置一个包含在文件对话框中选定的文件名的字符串。
InitialDirector 对话框的初始目录
OverwritePrompt 控制在将要在改写现在文件时是否提示用户,只有在ValidateNames为真值时,才适用
ShowHelp 启用"帮助"按钮
Title 将显示在对话框标题栏中的字符
ValidateNames 控制对话框检查文件名中是否不含有无效的字符或序列
2、SaveFileDialog事件如下:
FileOk 当用户点击"打开"或"保存"按钮时要处理的事件
HelpRequest 当用户点击"帮助"按钮时要处理的事件
3、示例
protected void button1_Click(object sender, System.EventArgs e)
{ Stream myStream ;
SaveFileDialog saveFileDialog1 = new SaveFileDialog();
saveFileDialog1.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*" ;
saveFileDialog1.FilterIndex = 2 ;
saveFileDialog1.RestoreDirectory = true ;
if(saveFileDialog1.ShowDialog() == DialogResult.OK)
{
if((myStream = saveFileDialog1.OpenFile()) != null)
{
// Code to write the stream goes here.
myStream.Close();
}
}
}

三、 字体对话框(FontDialog)
1、字体对话框(FontDialog)常用属性
ShowColor 控制是否显示颜色选项
AllowScriptChange 是否显示字体的字符集
Font 在对话框显示的字体
AllowVerticalFonts 是否可选择垂直字体
Color 在对话框中选择的颜色
FontMustExist 当字体不存在时是否显示错误
MaxSize 可选择的最大字号
MinSize 可选择的最小字号
ScriptsOnly 显示排除OEM和Symbol字体
ShowApply 是否显示"应用"按钮
ShowEffects 是否显示下划线、删除线、字体颜色选项
ShowHelp 是否显示"帮助"按钮
2、字体对话框(FontDialog)的事件
Apply 当点击"应用"按钮时要处理的事件 上海上班族
HelpRequest 当点击"帮助"按钮时要处理的事件
3、示例
protected void button1_Click(object sender, System.EventArgs e)
{ fontDialog1.ShowColor = true;
if(fontDialog1.ShowDialog() != DialogResult.Cancel )
{
textBox1.Font = fontDialog1.Font ;
textBox1.ForeColor = fontDialog1.Color;
}
}

四、颜色对话框(ColorDialog)
1、 颜色对话框(ColorDialog)的常见属性
AllowFullOpen 禁止和启用"自定义颜色"按钮
FullOpen 是否最先显示对话框的"自定义颜色"部份
ShowHelp 是否显示"帮助"按钮
Color 在对话框中显示的颜色
AnyColor 显示可选择任何颜色
CustomColors 是否显示自定义颜色
SolidColorOnly 是否只能选择纯色
3、示例
protected void button1_Click(object sender, System.EventArgs e)
{ ColorDialog MyDialog = new ColorDialog();
// Keeps the user from selecting a custom color.
MyDialog.AllowFullOpen = false ;
// Allows the user to get help. (The default is false.)
MyDialog.ShowHelp = true ;
// Sets the initial color select to the current text color,
// so that if the user cancels out, the original color is restored.
MyDialog.Color = textBox1.ForeColor ;
MyDialog.ShowDialog();
textBox1.ForeColor = MyDialog.Color;
}

五、打印预览对话框和打印对话框
1、打印预览对话框(PrintPreviewDialog)属性:
AutoScrollMargin 获取或设置自动滚动边距的大小。
AutoScrollMinSize 获取或设置自动滚动的最小尺寸。
DialogResult 获取或设置窗体的对话框结果。
Document 获取或设置要预览的文档。
HelpButton 获取或设置一个值,该值指示是否应在窗体的标题框中显示“帮助”按钮。
2、打印对话框(PrintDialog)属性:
AllowPrintToFile 禁止或使用"打印到文件"复选框
AllowSelection 禁止或使用"选定内容"单选框
AllowSomePages 禁止或使用"页"单选按钮
Document 从中获取打印机设置的PrintDocument
PrintToFile 打印到文件"复选框是否选中
ShowHelp 控制是否显示"帮助"按钮
ShowNetWork 控制是否显示"网络"按钮
3、示例:
//在用户按下页面预览按钮时激发的事件 上海上班族
private void printPreviewButton_Click(object sender, EventArgs e) {
try {
StreamReader streamToPrint = new StreamReader ("PrintMe.Txt");
try {
TextFilePrintDocument pd = new TextFilePrintDocument(streamToPrint); //假定为默认打印机
if (storedPageSettings != null) {
pd.DefaultPageSettings = storedPageSettings ;
}
PrintPreviewDialog dlg = new PrintPreviewDialog() ;
dlg.Document = pd;
dlg.ShowDialog();
} finally {
streamToPrint.Close() ;
}
} catch(Exception ex) {
MessageBox.Show("试图预览要打印的文件时发生错误 - " + ex.Message);
}
}
//在用户按下打印按钮时激发的事件
private void printButton_Click(object sender, EventArgs e)
{ try {
StreamReader streamToPrint = new StreamReader ("PrintMe.Txt"); 需要请联系我
try {
TextFilePrintDocument pd = new TextFilePrintDocument(streamToPrint);
PrintDialog dlg = new PrintDialog() ;
dlg.Document = pd;
DialogResult result = dlg.ShowDialog();
if (result == DialogResult.OK)
pd.Print();

}
finally {
streamToPrint.Close() ;
}
} catch(Exception ex) {
MessageBox.Show("打印文件时发生错误 - " + ex.Message);
}
}

打开各种对话框示例:
打开文档
OpenFileDialog  openFileDialog=new OpenFileDialog();
openFileDialog.InitialDirectory=”D://”;
openFileDialog.Filter=”文本文件|*.*|c#文件|*.cs|所有文件|*.*”;
openFileDialog.RestoreDirectory=true;
openFileDialog.FilterIndex=1;
if(openFileDialog.ShowDialog()==DialogResult.OK)
{
  string fname=openFileDialog.FileName;
  StreamReader sr=File.OpenText(fname);
  string str;
  while((str=sr.ReadLine())!=null)
{
    this.richTextBox1.Text+=str ;
}
}

保存文档
SaveFileDialog saveFileDialog=new SaveFileDialog();
saveFileDialog.Filter=” 文本文件|*.*|c#文件|*.cs|所有文件|*.*”;
saveFileDialog.FilterIndex=2;
saveFileDialog.RestoreDirectory=true;
if(saveFileDialog.ShowDialog()==DialogResult.OK)
{
  string fName=saveFileDialog.FileName;
  StreamWriter sw=File.AppendText(fName);
  sw.Write(this.richTextBox1.Text);
  sw.Write(“dsfadf”);
  sw.Flush();
  sw.Close();
}

字体对话框
FontDialog fontDialog=new FontDialog();
fontDialog.Color=richTextBox1.ForeColor;
fontDialog.AllowScriptChange=true;
fontDialog.ShowColor=true;
if(fontDialog.ShowDialog()!=DialogResult.Cancel)
{
  richTextBox1.SelectionFont=fontDialog.Font;//将当前选定的文字改变字体
}

颜色对话框
ColorDialog colorDialog=new ColorDialog();
colorDialog.AllowFullOpen=true;
colorDialog.FullOpen=true;
colorDialog.ShowHelp=true;
colorDialog.Color=Color.Balck;
colorDialog.ShowDialog();
richTextBox1.SelectionColor=colorDialog.Color;

打印预览对话框
lineReader=new StringReader(richTextBox1.Text);
try
{
  PrintPreviewDialog printPreviewDialog1=new PrintPreviewDialog();
  printPreviewDialog1.Document=printDocument;
  printPreviewDialog1.FormBorderStyle=FormBorderStyle.Fixed3D;
  printPreviewDialog1.ShowDialog(this);
}
catch(Exception  excep)
{
 MessageBox.Show(excep.Message,”打印出错”,MessageBoxButton.OK,MessageBoxIcon.Error);
return;
}

打印对话框
PrintDialog printDialog=new PrintDialog();
printDialog.Document=printDocument;
if(printDialog.ShowDialog()!=DialogReult.Cancel)
{
  try
  {
    printDocument.Print();
}
catch(Exception ex)
{
  MessageBox.Show(ex.Message);
}
}

 

 

 

转自网易博客。。http://icelam.blog.163.com/blog/static/305101082007513105237897/ 枫林雅阁

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C#中的对话框 的相关文章

随机推荐

  • 04-8_Qt 5.9 C++开发指南_QTableWidget的使用

    文章目录 1 QTableWidget概述 2 源码 2 1 可视化UI设计 2 2 程序框架 2 3 qwintspindelegate h 2 4 qwintspindelegate cpp 2 5 mainwindow h 2 6 m
  • VisionWorks快速入门--Graph Mode

    VisionWorks快速入门 Graph Mode 从立即模式过渡到图形模式 1 创建新节点 2 向GraphModestabilizer类添加新字段和函数 3 初始化字段 4 执行算法的迭代 5 Release objects 结果 本
  • 解决科研人痛点的大突破:Zotero 6.0 版有哪些亮点?

    痛点 翻了翻日记 发现我第一次使用 Zotero 文献管理器的时间 是 2008 年 12 月 19 日 这中间曾经因为论文写作需要处理中文文献等原因 若干次切换过其他的文献管理器 包括 NoteExpress 和 Mendeley 等 几
  • IIS站点发布log

    1 启用IIS服务 2 打开IIS管理界面 3 添加站点 4 填写站点信息 1 物理路径为发布的log文件目录 2 填写IP地址和端口 5 发布的log文件设置权限 添加Everyone用户 并设置权限 6 启动站点 浏览器访问 此时出错
  • city_picker改造-------五级城市联动控件

    这几天做项目 需要用到城市控件 网上找了个样式不错的控件 基于bootstrap的 具体用法可以参照https blog csdn net bsw451926392 article details 78886965 但是我这边需要精确到村级
  • vscode的vue中出现很多红色波浪线解决办法

    vscode的vue中出现很多红色波浪线 看上去就很烦 如下所示 这么看呢 代码没什么问题 为什么有那么多红色波浪线呢 其实出现这个的原因是代码和vetur插件的格式不对应 解决办法 1 严格遵循vetur的格式去写 不过麻烦 2 关闭ve
  • 区块链系统面临哪些风险以及有哪些防范措施

    区块链是涉及多方的开放系统 早期的应用又与虚拟加密货币相关 由此使得区块链系统所内含的和面对的风险得以暴露 同时各种安全措施也得以被及时使用和验证 但区块链在真实世界的大规模应用尚未展开 因此区块链所内含以及面临的风险暴露尚不完全 预防措施
  • 【linux服务器编程学习】10.多线程编程

    linux中的线程 线程是linux中完成一个独立任务的完整执行序列 即一个可调度的实体 根据运行环境 可分为内核线程和用户线程 分别由内核和程序线程库调度 关于linux多线程编程 需要掌握怎么创建和结束线程 怎么读取和设置线程属性 线程
  • macOS中如何使用OpenGL 3.2 Core Profile

    从macOS Lion 10 7 开始 Apple支持了对OpenGL 3 2 Core Profile的支持 不过Core Profile与Compatible相比有比较大幅度的改变 从主机端的API到OpenGL接口 再到GLSL Op
  • ISP DSP的区别

    ISP 是Image Signal Processor 的简称 也就是图像信号处理器 而DSP是Digital Signal Processor 的缩写 也就是数字信号处理器 ISP一般用来处理Image Sensor 图像传感器 的输出数
  • Java 实现生产者与消费者问题

    生产者与消费者问题 问题简述 一群生产者进程在生产产品 并将这些产品提供给消费者去消费 为了使生产者进程与消费者进程能够并发进行 在两者之间设置一个具有n个缓冲区的缓冲池 生产者进程将产品放入一个缓冲区中 消费者可以从一个缓冲区取走产品去消
  • C/C++中的移位运算符——由二进制转换程序引发的思考

    以前学习移位运算符的时候并没有太多关注它 而此次关于移位运算符的探究 主要源于写的一个二进制显示的程序 include
  • 处理Selenium3+python3定位鼠标悬停才显示的元素

    这篇文章主要介绍了Selenium3 python3 如何定位鼠标悬停才显示的元素 文中通过简单代码给大家介绍的非常详细 需要的朋友可以参考下 先给大家介绍下Selenium3 python3 如何定位鼠标悬停才显示的元素 定位鼠标悬停才显
  • sublime常用插件及安装方式介绍

    Sublime Text 是一个文本编辑器 收费软件 可以无限期试用 同时也是一个先进的代码编辑器 Sublime Text是由程序员Jon Skinner于2008年1月份所开发出来 它最初被设计为一个具有丰富扩展功能的Vim Subli
  • python遍历目录的方法

    简单暴力法 递归 假设在 E 盘中 有个名为 Python 的文件夹 该文件夹中也有两个文件夹 分别是 A 和 B 另外 在 A 文件夹中还有一个 results txt 的文本文件 因此 Python 文件夹的文件结构如下 Python
  • 【满分】【华为OD机试真题2023 JAVA&JS】寻找链表的中间结点

    华为OD机试真题 2023年度机试题库全覆盖 刷题指南点这里 寻找链表的中间结点 知识点链表数组 时间限制 1s 空间限制 256MB 限定语言 不限 题目描述 给定一个单链表 L 请编写程序输出 L 中间结点保存的数据 如果有两个中间结点
  • 1055: 兔子繁殖问题(Fibonacci数列)

    1055 兔子繁殖问题 题目描述 这是一个有趣的古典数学问题 著名意大利数学家Fibonacci曾提出一个问题 有一对小兔子 从出生后第3个月起每个月都生一对兔子 小兔子长到第3个月后每个月又生一对兔子 按此规律 假设没有兔子死亡 第一个月
  • MybatisPlus学习 条件构造器Wrapper方法详解

    目录 1 条件构造器 2 AbstractWrapper 2 1 eq allEq ne 2 2 gt ge lt le 2 3 between notBetween 2 4 like notLike likeLeft likeRight
  • 期货市场之反转形态分析

    三 反转形态分析 反转形态表示价格趋势将与此前趋势的原方向相反 通常 反转形态的形成要有三个因素 即要有主要趋势的存在 成交量要与价格变动相配合和重要趋势线的突破 1 头肩形 头肩形是可靠性较高的反转形态 通常分头肩顶 图左 和头肩底 图右
  • C#中的对话框

    常用对话框有 1 文件对话框 FileDialog 它又常用到两个 打开文件对话框 OpenFileDialog 保存文件对话 SaveFileDialog 2 字体对话框 FontDialog 3 颜色对话框 ColorDialog 4