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组件一起使用来控制文档 ...
随机推荐
- [原创]Oracle 12c 抢先安装手迹
[前言] Oracle 12c 终于投放市场了,唉,等了很久了.据官方说这是一个为云计算平台量身定做的版本....且不管真的假的,先让我们把它装上再说. 注:笔者在安装的过程中发现12c的安装过程,较 ...
- phpstudy的apache端口没有被占用,也有vc9,防火墙也没开,也开杀毒软件,就是无法启动apache
我电脑装了一个独立的apche和一个phpstudy的apache,我学习是教学视频是php5.2而phpstudy刚好支持. 但是我在选取phpstudy的php版本5.3n以上就无法启动apach ...
- ipad互动教学
- Unix时间戳
Unix时间戳 http://www.linuxidc.com/Linux/2016-01/127572.htm 这里的时间戳,指的就是Unix时间戳(Unix timestamp).它也被称为Uni ...
- python csv用法
csv打开文件的时候,如下代码,出错: import csv name = "D:\\selenium\\data\\name.csv" inf= csv.reader(open( ...
- ios-将代码创建的视图控件放入拖拽控件的下面
如图所示 图片是拖拽上去的imageView,橘黄色控件是在代码中创建的添加上去的,此时黄色view在imageView 上方 调用方法bringSubviewToFront:试图将imageView ...
- 【Python学习】函数参数传递方法四种(位置,关键字,默认值,包裹位置,包裹关键字传递)
1. 位置传递: #--coding:utf-8-- def send(name,address): return 'package is sent to %s, located in %s' %(n ...
- Android 自定义view(二) —— attr 使用
前言: attr 在前一篇文章<Android 自定义view -- attr理解>已经简单的进行了介绍和创建,那么这篇文章就来一步步说说attr的简单使用吧 自定义view简单实现步骤 ...
- easyUI 复选框批量操作
前台js代码 function destroyExcelout(){ //返回选中多行 var row = $('#dg').datagrid('getSelections' ...
- Sublime Text3快捷键以及常用插件
工若善其事,必先利其器.做为一个web前端开发人员,必须有一个得心应手的编码工具,本人推荐Sublime Text3和WebStorm,但WebStorm太过智能和耗性能了对初学者来说弊大于利,所以我 ...