C#-SaveFileDialog-各类对话框用法.docx_第1页
C#-SaveFileDialog-各类对话框用法.docx_第2页
C#-SaveFileDialog-各类对话框用法.docx_第3页
C#-SaveFileDialog-各类对话框用法.docx_第4页
C#-SaveFileDialog-各类对话框用法.docx_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C# winform对话框用法大全 收藏 对话框中我们常用了以下几种:1、文件对话框(FileDialog) 它又常用到两个:打开文件对话框(OpenFileDialog)保存文件对话(SaveFileDialog)2、字体对话框(FontDialog)3、颜色对话框(olorDialog)4、打印预浏对话框(PrintPreviewDialog)5、页面设置(PrintDialog)6、打印对话框(PrintDialog)还有更多,有时间的网友可以看看。下面我们一个个来介绍。在介绍的过程中我用到了一个自己开发的类:File,主要是文件操作的。文件对话框(FileDialog)一、打开文件对话框(OpenFileDialog)1、 OpenFileDialog控件有以下基本属性InitialDirectory 对话框的初始目录 Filter 要在对话框中显示的文件筛选器,例如,文本文件(*.txt)|*.txt|所有文件(*.*)|*.* FilterIndex 在对话框中选择的文件筛选器的索引,如果选第一项就设为1 RestoreDirectory 控制对话框在关闭之前是否恢复当前目录 FileName 第一个在对话框中显示的文件或最后一个选取的文件 Title 将显示在对话框标题栏中的字符 AddExtension 是否自动添加默认扩展名 CheckPathExists 在对话框返回之前,检查指定路径是否存在 DefaultExt 默认扩展名 DereferenceLinks 在从对话框返回前是否取消引用快捷方式 ShowHelp 启用帮助按钮 ValiDateNames 控制对话框检查文件名中是否不含有无效的字符或序列 2、 OpenFileDialog控件有以下常用事件FileOk 当用户点击打开或保存按钮时要处理的事件 HelpRequest 当用户点击帮助按钮时要处理的事件 3、OpenFileDialog的效果如下:可以用以下代码来实现上面这个对话框:private void openFileDialogBTN_Click(o b j e c t sender, System.EventArgs e)OpenFileDialog openFileDialog=new OpenFileDialog();openFileDialog.InitialDirectory=c:;/注意这里写路径时要用c:而不是c:openFileDialog.Filter=文本文件|*.*|C#文件|*.cs|所有文件|*.*;openFileDialog.RestoreDirectory=true;openFileDialog.FilterIndex=1;if (openFileDialog.ShowDialog()=DialogResult.OK)fName=openFileDialog.FileName;File fileOpen=new File(fName);isFileHaveName=true;richTextBox1.Text=fileOpen.ReadFile();richTextBox1.AppendText(); 其中有用到了File()这个类,是我在程序用来执行文件操作,自己写的,在最后附了这个类的源码。有兴趣的网友可以自己分析。二、保存文件对话框(SaveFileDialog)保存文件对话框控件有两种情况,一就是保存,二就是另存为,保存很简单,就是在文件已经打开的情况下的,再把文件写一篇,在这里我们主要讲另存为 的情况(SaveAs)。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、SaveFileDialog的效果如下:4、用下例代码可以实现private void saveAsDialogBTN_Click(o b j e c t sender, System.EventArgs e)SaveFileDialog saveFileDialog=new SaveFileDialog();saveFileDialog.Filter=文本文件|*.*|C#文件|*.cs|所有文件|*.*;saveFileDialog.FilterIndex=2;saveFileDialog.RestoreDirectory=true;if(saveFileDialog.ShowDialog()=DialogResult.OK)if(saveFileDialog.ShowDialog()=DialogResult.OK)fName=saveFileDialog.FileName;File fSaveAs=new File(fName);isFileHaveName=true; file:/保存的文件有名字fSaveAs.WriteFile(richTextBox1.Text); 其实这些都可以在VS.NET的IDE环境中直接完成,为了说明问题,我还是一条条列也来了。当中用到了一个File的类库,下面是源程序:File.csusing System;using System.IO;using System.Windows.Forms;using System.Text;namespace dialog/*/ / Summary description for File./ public class Filestring fileName;public File(string fileName)this.fileName=fileName;public string ReadFile()tryStreamReader sr=new StreamReader(fileName,Encoding.Default);string result=sr.ReadToEnd();sr.Close();return result;catch(Exception e)MessageBox.Show(e.Message);return null;public void WriteFile(string str)tryStreamWriter sw=new StreamWriter(fileName,false,Encoding.Default);sw.Write(str);sw.Close();catch(Exception e)MessageBox.Show(e.Message,保存文件出错!);字体对话框(FontDialog)在文字处理中,我们常用到字体,现在我们来做一个最常见的字体对话框。一、 字体对话框(FontDialog)常用属性ShowColor 控制是否显示颜色选项 AllowScriptChange 是否显示字体的字符集 Font 在对话框显示的字体 AllowVerticalFonts 是否可选择垂直字体 Color 在对话框中选择的颜色 FontMustExist 当字体不存在时是否显示错误 MaxSize 可选择的最大字号 MinSize 可选择的最小字号 ScriptsOnly 显示排除OEM和Symbol字体 ShowApply 是否显示应用按钮 ShowEffects 是否显示下划线、删除线、字体颜色选项 ShowHelp 是否显示帮助按钮 二、 字体对话框(FontDialog)的事件Apply 当点击应用按钮时要处理的事件 HelpRequest 当点击帮助按钮时要处理的事件 三、 字体对话框(FontDialog)的效果四、 实现代码private void fontDialogBTN_Click(o b j e c t sender, System.EventArgs e)FontDialog fontDialog=new FontDialog();fontDialog.Color=richTextBox1.ForeColor;fontDialog.AllowScriptChange=true;fontDialog.ShowColor=true;if(fontDialog.ShowDialog()!=DialogResult.Cancel)richTextBox1.SelectionFont=fontDialog.Font;/将当前选定的文字改变字体上面代码将选定的文本设置为当前FontDialog对话框中的字体。颜色对话框(ColorDialog)颜色拾取框也是我们常见的对话框之一,下面我们来看看在C#中是如何操作颜色对话框的呢?一、 颜色对话框(ColorDialog)的常见属性AllowFullOpen 禁止和启用自定义颜色按钮 FullOpen 是否最先显示对话框的自定义颜色部份 ShowHelp 是否显示帮助按钮 Color 在对话框中显示的颜色 AnyColor 显示可选择任何颜色 CustomColors 是否显示自定义颜色 SolidColorOnly 是否只能选择纯色 二、 颜色对话框(ColorDialog)的效果如下:三、 实现代码见下:private void colorDialogBTN_Click(o b j e c t sender, System.EventArgs e)ColorDialog colorDialog=new ColorDialog();colorDialog.AllowFullOpen=true;colorDialog.FullOpen=true;colorDialog.ShowHelp=true;colorDialog.Color=Color.Black;/初始化当前文本框中的字体颜色,当用户在ColorDialog对话框中点击取消按钮file:/恢复原来的值colorDialog.ShowDialog();richTextBox1.SelectionColor=colorDialog.Color;实现颜色对话框(ColorDialog)很容易吧,其实不只是颜色对话框,C#也是很容易的,只要用心去学,都容易的。讲完了颜色对话框(ColorDialog),我们 来讲打印和页面设置.页面设置(PageSetupDialog)其实页面设置(PageSetupDialog)没有太多的讲,既然讲到这里,我还是把PageSetupDialog中常用的属性列出来吧一、页面设置(PageSetupDialog)常见属性 AllowMargins 设置是否可以对边距的编辑 AllowOrientation 是否可以使用方向单选框 AllowPaper 设置是否可以对纸张大小的编辑 AllowPrinter 设置是否可以使用打印机按钮 Document 获取打印机设置的PrintDocument MinMargins 允许用户选择的最小边距 二、面设置(PageSetupDialog)的效果如下就这么简单啦,我们看看下面的吧,还有更重磅的东东呢?关于打印的。打印预浏及打印打印是我们在windows编程中常要用到的功能,在以前都是很麻烦工作,但在Microsoft .net Framework中打印是以组件提供给我们使用,不过还是点麻烦的,所以就专门写出来,供大家参改。一, 在.net环境中,说到打印,就不能不说PrintDocumet这个类,PrintDocument属于System.Drawing.Printing这个名字空间,PrintDocument这个类是 实现打印的核心代码。如果要实现打印,就必需首先构造PrintDocument对象添加打印事件,printDocument.PrintPage+=new PrintPageEventHandler(this.printDocument_PrintPage)打印其实也是调用Graphics类的方法进行画图,下面这代码是根据MSDN上提供的例程改写的。MSDN打印例程地址:/library/default.asp?url=/library/en-us/cpref/html/frlrfSystemDrawingPrintingPrintDocumentClassTopic.asp ,有兴趣的网友可以参改一下。下面是我改写的printDocument_PrintPage: private void printDocument_PrintPage(o b j e c t sender, System.Drawing.Printing.PrintPageEventArgs e)float linesPerPage=0;/页面的行号float yPos=0;/打印字符串的纵向位置int count=0;/行计数器float leftMargin =e.MarginBounds.Left;/左边距float topMargin=e.MarginBounds.Top;/上边距string line=null;/行字符串Color clr=richTextBox1.SelectionColor;/当前的打印颜色,在我这个程序没有实现不同颜色打印SolidBrush b =new SolidBrush(clr);/刷子fnt=richTextBox1.SelectionFont;/当前的打印字体linesPerPage=e.MarginBounds.Height/fnt.GetHeight(e.Graphics);/每页可打印的行数file:/逐行循行打印一页while(count yPos=topMargin+(count*fnt.GetHeight(e.Graphics);e.Graphics.DrawString(line,fnt,b,leftMargin,yPos,new StringFormat();count+;file:/如果该页打印完成而line不为空说明还有没完成的页面,发出下一次的打印事件,file:/在下一次的打印中lineReader会自动读取上次没有打印完的内容。lineReader可以记录当前读取的位置if(line!=null)e.HasMorePages=true;elsee.HasMorePages=false;在这里可以完成整个打印任务。把printDocument_PrintPage构造好后,就可以打印和打印预浏。二、打印预浏对话框(PrintPreviewDialog)打印预浏控件是用来显示一个打印文档在打印后的效果。在打印预浏对话框中包含有,打印、缩放、单页或多页、关闭等按钮。对话框如下:打印预浏对话框没有太多的属性,最后通过ShowDialog()调用。上面的实现代码如下: private void printPreviewBTN_Click(o b j e c t sender, System.EventArgs e)lineReader = new StringReader(richTextBox1.Text);tryPrintPreviewDialog printPreviewDialog1=new PrintPreviewDialog();printPreviewDialog1.Document=printDocument;printPreviewDialog1.FormBorderStyle=FormBorderStyle.Fixed3D;printPreviewDialog1.ShowDialog(this);catch(Exception excep)MessageBox.Show(excep.Message, 打印出错, MessageBoxButtons.OK, MessageBoxIcon.Error);return;很简单的,只要你把PrintDocument_PrintPage()写好了,这里就很容易了。三、打印对话框(PrintDialog)1、打印对话框(PrintDialog)只要有

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论