今天,我主要学习了容器控件、打印控件、对话框控件。

  在正式进行今天的内容之前,首先补充了布局的两个属性:Anchor:锁定位置,Dock:填充位置,一般与容器控件配合使用。

  之后,我学习了第一部分内容:容器控件。

  Panel:类似于DIV,可以独立布局,还可以让其它控件及容器在它的内部再次布局。

  FlowLayoutPanel:流式布局容器,内容会默认从左向右排列,如果宽度不够了,那么自动换行。

  GroupBox:拥有Panel全部属性,比Panel多了个标题和边框样式。

  TabControl:选项卡容器。

  SplitContainer:二分区容器。

  TableLayoutPanel:表格容器。

  第二部分:打印控件。

  PrintDocument:要打印的对象。

  PageSetupDialog:打印设置对话框。

  PrintPreviewControl:打印预览控件。
  PrintPreviewDialog:打印预览对话框。

  PrintDialog:打印对话框。

  DialogResult dr = printDialog1.ShowDialog();

  if (dr == DialogResult.OK)//如果用户点击的是确定按钮,那么执行打印
  {
    printDocument1.Print();
  }

  DialogResult是一个可被实例化的枚举类,用来接收用户在对话框中的操作

    #region 打印
private void 打印设置ToolStripMenuItem_Click(object sender, EventArgs e)
{
pageSetupDialog1.Document = printDocument1;
pageSetupDialog1.ShowDialog();
} #region 打印对象
private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
{
Font f=new Font("黑体",);
SolidBrush b=new SolidBrush(Color.Black); e.Graphics.DrawString(richTextBox1.Text, f, b, , );
}
#endregion private void 打印预览VToolStripMenuItem_Click(object sender, EventArgs e)
{
printPreviewDialog1.Document = printDocument1;
printPreviewDialog1.ShowDialog();
} private void 打印PToolStripMenuItem_Click(object sender, EventArgs e)
{
printPreviewDialog1.Document = printDocument1;
DialogResult dr = printDialog1.ShowDialog();
if(dr==DialogResult.OK)//如果用户点击确定按钮,执行打印
{
printDocument1.Print();
}
}
#endregion

  第三部分:对话框控件。

  colorDialog - 颜色选择对话框。

  folderBrowserDialog - 文件路径选择对话框。

  fontDialog - 字体选择对话框。

  openFileDialog - 打开文件对话框。

  openFileDialog.FileName="";                                                            //弹出的“打开对话框”默认打开的文件名。(绝对路径显示)
  openFileDialog.Filter = "文本文件.txt|*.txt|视频文件|*.avi|所有文件|*.*";//选择打开的“打开对话框”中打开的文件类型。

  saveFileDialog - 保存文件对话框。
  如果我已经保存过了,那么在次保存不需要弹出对话框,而是直接执行保存就可以。

  流:IO
  StreamReader - 读取流 sr.ReadToEnd();
  StreamWriter - 输出流 sw.Write(要输出的内容);

     private void 打开OToolStripMenuItem_Click(object sender, EventArgs e)
{
openFileDialog1.FileName = "";
openFileDialog1.Filter = "文本文件.txt|*.txt|视频文件|*.avi|所有文件|*.*";
DialogResult dr = openFileDialog1.ShowDialog(); if (dr == DialogResult.OK)
{ //toolStripStatusLabel1.Text = openFileDialog1.FileName;
StreamReader sr = new StreamReader(openFileDialog1.FileName, System.Text.Encoding.Default);
textBox1.Text = sr.ReadToEnd();
sr.Close();
} } string path = ""; private void 保存SToolStripMenuItem_Click(object sender, EventArgs e)
{
if (path == "")
{
saveFileDialog1.FileName = "新建文本文件.txt"; saveFileDialog1.Filter = "文本文件.txt|*.txt|所有文件|*.*";
DialogResult dr = saveFileDialog1.ShowDialog(); if (dr == DialogResult.OK)
{
//toolStripStatusLabel1.Text = saveFileDialog1.FileName;
StreamWriter sw = new StreamWriter(saveFileDialog1.FileName);
sw.Write(textBox1.Text);
sw.Close();
path = saveFileDialog1.FileName;
}
}
else
{
StreamWriter sw = new StreamWriter(path);
sw.Write(textBox1.Text);
sw.Close();
}
}

WinForm 布局,容器、打印和对话框控件的更多相关文章

  1. Android 在布局容器中动态添加控件

    这里,通过一个小demo,就可以掌握在布局容器中动态添加控件,以动态添加Button控件为例,添加其他控件同样道理. 1.addView 添加控件到布局容器 2.removeView 在布局容器中删掉 ...

  2. Winform容器标签 打印标签 对话框控件

    一.容器标签 布局: Anchor:锁定位置,指定与窗口容器的边缘位置,会随着窗口大小的改变而改变: Dock:填充窗口的位置.一般与容器标签同时使用. 1.Panel:对控件进行分组.可以独立布局, ...

  3. C#(Winform)的SaveFileDialog(文件保存对话框)控件使用

       #region 保存对话框   private void ShowSaveFileDialog()   {         //string localFilePath, fileNameExt ...

  4. winform对话框控件、打印控件

    对话框控件: ColorDialog:颜色选择对话框,让用户自行选择一种颜色,使用方法类似FontDialog FontDialog:字体选择对话框,让用户自行选择一种字体(也可以选择字体颜色,需要在 ...

  5. winform 对话框控件,打印控件

    1.文件对话框(FileDialog) 它又常用到两个: 打开文件对话框(OpenFileDialog) 保存文件对话框(SaveFileDialog) 2.字体对话框(FontDialog) 3.颜 ...

  6. 【2017-05-02】winform弹出警告框是否进行增删改操作、记事本制作、对话框控件和输出输入流

    一.winform弹出警告框是否进行增删改操作 第一个参数是弹出窗体显示的内容,第二个参数是标题,第三个参数是该弹窗包含确定和取消按钮. 返回的是一个枚举类接收一下. 再进行判断,如果点的是确定按钮, ...

  7. Duilib源码分析(五)UI布局—Layout与各子控件

    接下来,继续分析duilib之UI布局Layout,目前提供的布局有:VerticalLayout.HorizontalLayout.TileLayout.TabLayout.ChildLayout分 ...

  8. SNF开发平台WinForm之三-开发-单表选择控件创建-SNF快速开发平台3.3-Spring.Net.Framework

    3.1运行效果: 3.2开发实现: 3.2.1 这个开发与第一个开发操作步骤是一致的,不同之处就是在生成完代码之后,留下如下圈红程序,其它删除. 第一个开发地址:开发-单表表格编辑管理页面 http: ...

  9. android 33 对话框控件

    对话框控件:最多3个按钮. mainActivity.java package com.sxt.day05_09; import android.app.Activity; import androi ...

随机推荐

  1. JDBC之事务隔离级别以及ACID特性

    JDBC之事务隔离级别以及ACID特性 事务隔离级别: 1.更新遗失(Lost update) 两个事务都同时更新一行数据,但是第二个事务却中途失败退出,导致对数据的两个修改都失效了.这是因为系统没有 ...

  2. 【DOS】这个命令太牛逼了

    删除一个程序了后 竟然上不了网了 运行下列命令重启后就可以了 实在是救了我系统一命 命令如下: netsh winsock reset

  3. stl——vector详解

    stl——vector详解 stl——vector是应用最广泛的一种容器,类似于array,都将数据存储于连续空间中,支持随机访问.相对于array,vector对空间应用十分方便.高效,迭代器使ve ...

  4. linux下面的解压缩文件的命令

    尝试去好好用linux.新手起步.   这边只会提到我用过的.其他相关的以后我用到了我会补充的.如果有错欢迎指正 注:1.c-创建-create 2.v-复杂输出    3.f-文件-file     ...

  5. Windows下的环境搭建Erlang

    Windows下的环境搭建 Erlang 一.安装编译器 在http://www.erlang.org/download.html下载R16B01 Windows Binary File并安装. 二. ...

  6. ajax的分页查询(不刷新页面)

    既然是分页查询,那么就要有张数据很多的表,可以让它进行分页显示,用普通的方法进行分页查询必然是要刷新页面的,这里要实现不刷新页面进行分页显示数据,就要用到ajax方式.进行编写代码 (1)先写个显示数 ...

  7. js区分汉字和字符,校验长度

    遇到这么一个问题,    长度限制输入150个英文字符(小于等于150个英文字符长度),超出则直接禁止输入,并提醒:摘要输入必须小于等于75个中文字符长度! 长度校验倒是没问题,但是要区分汉字还是英文 ...

  8. MVC源码解析 - UrlRoutingModule / 路由注册

    从前面篇章的解析, 其实能看的出来, IHttpModule 可以注册很多个, 而且可以从web.config注册, 可以动态注册. 但是有一个关键性的Module没有讲, 这里就先来讲一下这个关键性 ...

  9. 用C++实现的元胞自动机

    我是一个C++初学者,控制台实现了一个元胞自动机. 代码如下: //"生命游戏"V1.0 //李国良于2017年1月1日编写完成 #include <iostream> ...

  10. Fiddler捕获抓取 App端数据包

    最近项目设计到App抓包,所以采用Fiddler工具来采集获取APP数据包,但是fiddler对有些app是无法捕获到数据包的,以下是我的处理方法: 1. 我默认代理端口使用的是自定义的端口而不是默认 ...