winform 对话框,保存,另存为,还有打印控件
学习的对话框的种类:
1、打开文件对话框(OpenFileDialog)
2、保存文件对话框(SaveFileDialog)
3、字体对话框(FontDialog)
4、颜色对话框(ColorDialog)
5、打开文件夹对话框 FolderBrowserDialog
_____________________________________________________________________________________________________________________________
如下程序:
public Form1()
{
InitializeComponent();
}
//dialog 对话,会话,对话框
//ShowDialog 将窗体显示为具有指定所有者模式的对话框
//DialogResult 指定标识符以指示对话框的返回值
//floder 文件夹,文书夹
//Browser 浏览器
//file 文件;档案;文件夹
//stream 流媒体类
private void 字体颜色ToolStripMenuItem_Click(object sender, EventArgs e)
{
DialogResult dr= colorDialog1.ShowDialog();//显示为调色板对话框
if (dr == DialogResult.OK)//如果用户点击的是确定才赋值
{
textBox1.ForeColor = colorDialog1.Color;//textbox1中的前景色
}
} private void 选择文件夹ToolStripMenuItem_Click(object sender, EventArgs e)
{
folderBrowserDialog1.ShowDialog();//显示为文件夹浏览器样式
textBox1.Text = folderBrowserDialog1.SelectedPath;//将选择路径里的内容显示在文本框
//绝对路径,相对路径 } private void 字体设置ToolStripMenuItem_Click(object sender, EventArgs e)
{
fontDialog1.ShowColor = true;//开启字体设置对话框里的颜色
fontDialog1.ShowDialog();//开启字体设置对话框
textBox1.Font = fontDialog1.Font;//文本框字体设置引用字体设置
textBox1.ForeColor = fontDialog1.Color;//文本框颜色引用字体设置对话框里的颜色
} private string lujing;//定义一个变量lujing来存放文件存放的路径 private void 保存SToolStripMenuItem_Click(object sender, EventArgs e)
{ if (lujing == "")//如果没有该保存路径
{
saveFileDialog1.FileName = "新建文件.txt";//设置保存名称及后缀文件类型
DialogResult dr = saveFileDialog1.ShowDialog();//设置一个对话框变量dr接收显示保存对话框的内容
if (dr == DialogResult.OK)//如果用户点击确定
{
//lujing = saveFileDialog1.FileName;//定义一个变量来接收保存文件的名称
StreamWriter sw = new StreamWriter(saveFileDialog1.FileName);//开启流通道
sw.Write(textBox1.Text);//保存编辑文档
sw.Close();//关闭流通道
}
}
else
{
StreamWriter sw = new StreamWriter(lujing);//开启流通道
sw.Write(textBox1.Text);//保存编辑文档
sw.Close();//关闭流通道
} } private void 新建NToolStripMenuItem_Click(object sender, EventArgs e)
{
if(this.textBox1.Text.Length>0)//如果打开记事本中有输入得东西
{
DialogResult dr = MessageBox.Show("是否进行保存","保存对话框",MessageBoxButtons.YesNo);
//弹出是否保存的对话框
if(dr==DialogResult.OK)//用户点击确定
{
if (lujing == "")//如果没有该保存路径
{
saveFileDialog1.FileName = "新建文件.txt";//设置保存名称及后缀文件类型
DialogResult dr1 = saveFileDialog1.ShowDialog();//设置一个对话框变量dr接收显示保存对话框的内容
if (dr1 == DialogResult.OK)//如果用户点击确定
{
//lujing = saveFileDialog1.FileName;//定义一个变量来接收保存文件的名称
StreamWriter sw = new StreamWriter(saveFileDialog1.FileName);//开启流通道
sw.Write(textBox1.Text);//保存编辑文档
sw.Close();//关闭流通道
}
}
else
{
StreamWriter sw = new StreamWriter(lujing);//开启流通道
sw.Write(textBox1.Text);//保存编辑文档
sw.Close();//关闭流通道
}
} }
lujing = null;//执行完新建将路径变为空,因为是新建的文本是不会有路径的.
this.textBox1.Text = ""; //将文本框清空
} private void 打开OToolStripMenuItem_Click(object sender, EventArgs e)
{
openFileDialog1.Filter = "文本文件|*.txt|所有文件|*.*";//筛选打开文件类型
DialogResult dr = openFileDialog1.ShowDialog();//设置一个对话框变量接收
if (dr == DialogResult.OK)//点击确定按钮
{ lujing = openFileDialog1.FileName;//将文件路径的值赋给lujing这个变量
StreamReader sr = new StreamReader(openFileDialog1.FileName,UnicodeEncoding.GetEncoding("GB2312"));//初始化读取流媒体类,并将打开的文件名称,及当前编码形式
//相当于用水管连接两个水龙头,打开开关数据进行读写操作
textBox1.Text = sr.ReadToEnd();
sr.Close();
}
//第二种方法
//OpenFileDialog ofd = new OpenFileDialog();//初始化打开文件夹这个类,并定义一个变量ofd
//ofd.Title = "打开";
//ofd.Filter = "文本文件|*.txt|所有文件|*.*";//设置打开文件类型对话框中文件类型,文本文件txt或者所有文件
//if (ofd.ShowDialog() == DialogResult.OK)//如果用户点击打开文件对话框
//{
// lujing = saveFileDialog1.FileName;
// FileStream fs = new FileStream(ofd.FileName, FileMode.Open, FileAccess.Read, FileShare.Read);
// //调用以文件为主的stream类,既支持同步操作又支持异步操作。将开启的权限赋给变量fs
// //ofd.FileName 获取文件名称及路径
// //FileMode.Open 打开选定文件
// //FileAccess.Read 设置文件操作为读取
// //FileShare.Read 允许随后打开文件的读取
// StreamReader sr = new StreamReader(fs, Encoding.Default);//读取流媒体初始化,将fs的值及当前字符编码赋值给sr
// textBox1.Text = sr.ReadToEnd();//用TextBox1接收读取到的内容
// sr.Close();//关闭读取的流媒体通道
// sr.Close();//关闭以文件操作为主的流媒体通道
//}
} private void 另存为AToolStripMenuItem_Click(object sender, EventArgs e)
{ saveFileDialog1.FileName = "新建为文件.txt";//设置保存名称及后缀文件类型
saveFileDialog1.ShowDialog();
StreamWriter sw = new StreamWriter(saveFileDialog1.FileName);//开启流通道
sw.Write(textBox1.Text);//保存编辑文档
sw.Close();//关闭流通道
} _____________________________________________________________________________________________________________________________________________________________
打印控件:
printDocument:定义一个向打印机发送的对象,其余打印控件均需要在此基础上进行操作
使用到事件里面的PrintPage事件
private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
{
Font f = new System.Drawing.Font("微软雅黑", 16);
Brush b = new SolidBrush(Color.Black); e.Graphics.DrawString(richTextBox1.Text, f, b, 10, 20);
}
_____________________________________________________________________________________________________________________________________________________________
PageSetupDialog:页面设置对话框
private void button1_Click(object sender, EventArgs e)
{
pageSetupDialog1.Document = printDocument1; pageSetupDialog1.ShowDialog();
}
__________________________________________________________________________________________________________________________
PrintPreviewControl:打印预览(只包含文档部分,并且需要在窗体上分配空间)
private void button2_Click(object sender, EventArgs e)
{
printPreviewControl1.Document = printDocument1; }
_____________________________________________________________________________________________________________________________________________________________
PrintPreviewDialog:打印预览对话框
private void button2_Click(object sender, EventArgs e)
{
printPreviewDialog1.Document = printDocument1;
printPreviewDialog1.ShowDialog();
}
_____________________________________________________________________________________________________________________________________________________________
PrintDialog:打印对话框(注意需要接收返回值为OK时 执行打印)
private void button3_Click(object sender, EventArgs e)
{
printDialog1.Document = printDocument1; DialogResult dr = printDialog1.ShowDialog(); if (dr == DialogResult.OK)
{
printDocument1.Print();
}
}
以上的内容可以用来做一些类似于记事本的这种应用程序,待更新
winform 对话框,保存,另存为,还有打印控件的更多相关文章
- winform 对话框控件,打印控件
1.文件对话框(FileDialog) 它又常用到两个: 打开文件对话框(OpenFileDialog) 保存文件对话框(SaveFileDialog) 2.字体对话框(FontDialog) 3.颜 ...
- winform对话框控件、打印控件
对话框控件: ColorDialog:颜色选择对话框,让用户自行选择一种颜色,使用方法类似FontDialog FontDialog:字体选择对话框,让用户自行选择一种字体(也可以选择字体颜色,需要在 ...
- C# ie通过打印控件点打印,总是弹出另存为xps的对话框
用的是lodop打印控件,点打印后,总是弹出另存为xps的对话框,后来在网上查到可能是把windows自带的Microsoft XPS Document Writer设为默认打印机的原因. 但现在没有 ...
- 【2017-05-03】winform打印控件、事件对象和事件数据、MDI窗体容器
一.打印控件 第一步先把打印对象搞出来. - printDocument 打印对象(将要打印的内容放到该对象里,从该对象里取内容打印) 设置他的PrintPage事件(对于要打印的每一页触发一次 ...
- 网页WEB打印控件制作-开放源码
在WEB系统中,打印的确是比较烦人的问题,如果我们能制作一个属于自己的自定义的打印插件,那么我们在后续自定义打印的时候能随心所欲的控制打印,这样的效果对于程序员来说是非常开心的一件事件,本文将自己开发 ...
- 在.net Core 使用PDF模板文件生成PDF文件,代替WEB打印控件!
这几天找WEB打印控件,要么收费的,要么免费的只能在IE里用! 我只想简单的打个标签纸!百度2天,看到一老兄说可以用PDF,然后又开始百度..找到了一篇文章 http://www.jianshu.co ...
- 基于MVC4+EasyUI的Web开发框架经验总结(16)--使用云打印控件C-Lodop打印页面或套打报关运单信息
在最新的MVC4+EasyUI的Web开发框架里面,我整合了关于网购运单处理的一个模块,其中整合了客户导单.运单合并.到货扫描.扣仓.出仓.查询等各个模块的操作,里面涉及到一些运单套打的操作,不过由于 ...
- [2014.01.27]wfPrintOcx 票据打印控件 v5.3
支持选择打印机,并自动记忆选择的打印机. 适合打印各类票据格式. 支持画正方形.长方形.圆形.椭圆.横线.竖线.HTTP图片. 支持数字金额转换成中文大写金额. 可以设置固定宽度的文字自动换行. 组件 ...
- Windows 打印控件
Windows窗体的PrintDocument组件用于设置一些属性,这些属性说明,在基于Windows的应用程序中要打印说明内容以及打印文档的能力,可将它与PrintDialog组件一起使用来控制文档 ...
随机推荐
- JMeter学习-037-JMeter调试工具之四-BeanShell+jmeter.log
前面三篇文章分别讲述了 HTTP Mirror Server . Debug PostProcessor 和 Debug Samper 的脚本调试实例.此文主要讲述第四种调试方法,通过 BeanShe ...
- JMeter学习-032-JMeter常见四种变量简介
在JMeter自动化测试脚本编写过程中,经常需要对测试脚本进行一些参数设置.例如,设置测试计划的全局变量(方便切换不同的测试环境).样本线程(HTTP请求等)的参数传递等. 通常,JMeter中常用的 ...
- rplidar & hector slam without odometry
接上一篇:1.rplidar测试 方式一:测试使用rplidar A2跑一下手持的hector slam,参考文章:用hector mapping构建地图 但是roslaunch exbotxi_br ...
- 使用命令行 Subversion 访问项目源文件(SVN)
from:http://www.open.collab.net/scdocs/ddUsingSVN_command-line.html.zh-cn 命令行 Subversion 入门 如果您参与的项目 ...
- VC工程中文件的编译顺序
用联合编译工具能减少大量编译时间,然而如果工程里有个大型cpp文件,其他文件都编译好了只等着它... 两步解决问题: 1.将大文件分散到多个小cpp里面,加快并发,减少单个文件编译时间 2.优先编译大 ...
- iOS APP开发的小知识(分享)
亿合科技小编发现从2007年第一款智能手机横空出世,由此开启了人们的移动智能时代.我们从一开始对APP的陌生,到现在的爱不释手,可见APP开发的出现对我们的生活改变有多巨大.而iOS AP ...
- 如何创建一个简单的C++同步锁框架(译)
翻译自codeproject上面的一篇文章,题目是:如何创建一个简单的c++同步锁框架 目录 介绍 背景 临界区 & 互斥 & 信号 临界区 互斥 信号 更多信息 建立锁框架的目的 B ...
- 解读ContentResolver和ContentProvider
转自:http://cthhqu.blog.51cto.com/7598297/1281217 1. ContentProvider的概述 ContentProvider: (Official Def ...
- MATLAB的GUI
% 常使用的对象查看和设置函数 % .get.set函数 ) % 获得句柄值为0的对象的属性,即显示器对象属性 plot([:]); % 绘制一幅图 title('示例'); % 增加text对象 % ...
- 简单封装数据请求(iOS)
#import <Foundation/Foundation.h> //给block起 别名 //类型 void(^)(BOOL success , id data) //别名是 Comp ...