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

一、容器标签

布局:

Anchor:锁定位置,指定与窗口容器的边缘位置,会随着窗口大小的改变而改变;

Dock:填充窗口的位置。一般与容器标签同时使用。

1、Panel:对控件进行分组。可以独立布局,里面可以放其他控件和容器(包括自身)再进行布局。

2、FlowLayOutPanel:流式布局标签。从左到右。宽度不够,自动换行。

3、GroupBox:分组容器。拥有panel全部属性,比panel多了个标题和边框样式。

4、Tabcontrol:选项卡容器。

5、SplitContainer:二分区容器。将容器分为两部分,这两个分部分,用户可以随意调节其大小。选中整体容器,可以修改Oriention属性来调节分割的区域是水平的还是垂直的。

6、TableLayout:表格容器。每个表格只能放一个控件,可以先放一个容器,再放多个控件。

二、打印标签

把要打印的文字放在一个对象a(printDocument)上,打印的操作就是对a的操作。

PageSetupDialog:打印设置对话框

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

PrintDialog:打印对话框

DialogResult dr = printDialog1.ShowDialog();

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

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

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Drawing;//设置printDocument时需要这个命名空间

namespace WindowsFormsApplication20
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button3_Click(object sender, EventArgs e)
        {

        }

        private void groupBox1_Enter(object sender, EventArgs e)
        {

        }

        private void radioButton1_CheckedChanged(object sender, EventArgs e)
        {

        }

        private void radioButton2_CheckedChanged(object sender, EventArgs e)
        {

        }

        private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
        {

        }

        private void 打印设置toolStripMenuItem1_Click(object sender, EventArgs e)//打印设置
        {
            pageSetupDialog1.Document = printDocument1;//将盛有打印内容的对象给设置窗口
            pageSetupDialog1.ShowDialog();//显示打印设置窗口
        }

        private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
        {
            Font f=new Font("黑体",20);
            SolidBrush s=new SolidBrush(Color.Blue);
            e.Graphics.DrawString(textBox1.Text,f,s,10,10);//设置盛有要打印内容的对象

        }

        private void toolStripMenuItem2_Click(object sender, EventArgs e)//打印预览
        {
            printPreviewControl1.Document = printDocument1;//将要打印的对象放到预览上
        }

        private void 新建NToolStripMenuItem_Click(object sender, EventArgs e)
        {

        }

        private void 打开OToolStripMenuItem_Click(object sender, EventArgs e)
        {

        }

        private void 打印PToolStripMenuItem_Click(object sender, EventArgs e)
        {
            printDialog1.Document = printDocument1;//将盛有打印内容的对象给打印窗口
            DialogResult s= printDialog1.ShowDialog();//接受打印结果
            if (s == DialogResult.OK)//如果选择确定
            {
                printDocument1.Print();
            }
        }
    }
}
View Code

 三、 对话框控件

1、colorDialog - 颜色选择对话框

(1)将此控件显示出来 DialogResult a = colorDialog1.ShowDialog()

(2)将文本内的文字的颜色选为选中的颜色 textBox1.ForeColor = colorDialog1.Color;

2、olderBrowserDialog - 文件路径选择对话框

(1)将此控件显示出来DialogResult a= folderBrowserDialog1.ShowDialog();

(2)将路径显示在某个区域的文本内 toolStripStatusLabel1.Text = folderBrowserDialog1.SelectedPath;

3、fontDialog - 字体选择对话框

操作跟colorDialog一样。

区别是能在fontDialog内设置字体颜色。/在FontDialoge1的ShowColor属性改为True,然后再进行设置。

4、openFileDialog - 打开文件对话框

(1)先设置好需要打开的文件的类型(或者后缀),如下:
openFileDialog1.Filter = "文本文件.txt|*.txt|视频文件|*.avi|所有文件|*.*";

(2)打开窗口,并且接收所选项DialogResult a= openFileDialog1.ShowDialog();

(3)在状态栏显示路径 toolStripStatusLabel1.Text = openFileDialog1.FileName;。(此步骤可有可无)

(4)用流(即StreamReader需要引用命名空间IO)接收路径上的文件并进行解码。 StreamReader s = new StreamReader(openFileDialog1.FileName,System.Text.Encoding.Default);

(5)对已经解码的文件进行读取,赋值到TextBox1中去!textBox1.Text = s.ReadToEnd();

(6)关闭流s.Close();

5、saveFileDialog - 保存文件对话框
(1)保存前保证文件不是空文件。 saveFileDialog1.FileName = "新建文本文件.txt";

(2)打开窗口,并且接收 DialogResult a = saveFileDialog1.ShowDialog();

(3)状态栏显示路径(此步骤可有可无)toolStripStatusLabel1.Text = saveFileDialog1.FileName;

(4)用StreamReader接收文件,程序自动解码,不用写解码党法StreamWriter ss = new StreamWriter(saveFileDialog1.FileName);
(5)将TextBox1的内容赋值到保存的文件中去ss.Write(textBox1.Text);
(6)必须关闭流ss.Close();

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace WindowsFormsApplication22
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void textBox1_TextChanged(object sender, EventArgs e)
        {

        }

        private void 帮助HToolStripMenuItem_Click(object sender, EventArgs e)
        {

        }

        private void 内容CToolStripMenuItem_Click(object sender, EventArgs e)//修改字体的颜色
        {

            DialogResult a = colorDialog1.ShowDialog();//窗体出现并且接收
            if (a == DialogResult.OK)
            {
                textBox1.ForeColor = colorDialog1.Color;//文本框的字体颜色
                toolStripStatusLabel1.ForeColor = colorDialog1.Color;//状态栏的颜色
            
            }
        }

        private void 索引IToolStripMenuItem_Click(object sender, EventArgs e)//修改字体的样式
        {
            DialogResult a = fontDialog1.ShowDialog();//窗体出现并且接收
          if (a == DialogResult.OK)
          {
              textBox1.Font = fontDialog1.Font;//设置字体样式
              textBox1.ForeColor = fontDialog1.Color;//在FontDialoge1的ShowColor属性改为True,再进行此步骤,设置字的颜色。
          }

        }

        private void 搜索SToolStripMenuItem_Click(object sender, EventArgs e)//文件路径选择对话框
        {
            DialogResult a= folderBrowserDialog1.ShowDialog();
            if (a == DialogResult.OK)
            {
                toolStripStatusLabel1.Text = folderBrowserDialog1.SelectedPath;
            }
        }

        private void 打开OToolStripMenuItem_Click(object sender, EventArgs e)
        {
            openFileDialog1.Filter = "文本文件.txt|*.txt|视频文件|*.avi|所有文件|*.*";//查看所需要的格式文件,格式:客户看的|计算机识别的。
            DialogResult a= openFileDialog1.ShowDialog();//打开窗口,并且接收
            if (a == DialogResult.OK)
            {

                toolStripStatusLabel1.Text = openFileDialog1.FileName;//状态栏显示路径
                //StreamReader需要引用新的命名空间IO。
                //用StreamReader接收文件,并且进行解码。
                StreamReader s = new StreamReader(openFileDialog1.FileName,System.Text.Encoding.Default);
               
                textBox1.Text = s.ReadToEnd();//对已经解码的文件进行读取,赋值到TextBox1中去!
                s.Close();//必须关闭流(StreamReader)
            }
        
        }

        private void 退出XToolStripMenuItem_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void 保存SToolStripMenuItem_Click(object sender, EventArgs e)
        {
            saveFileDialog1.FileName = "新建文本文件.txt";//保证不是空文件
            DialogResult a = saveFileDialog1.ShowDialog();//打开窗口,并且接收
            if (a == DialogResult.OK)
            {
                toolStripStatusLabel1.Text = saveFileDialog1.FileName;//状态栏显示路径
                StreamWriter ss = new StreamWriter(saveFileDialog1.FileName);//用StreamReader接收文件,程序自动解码,不用写解码党法
                ss.Write(textBox1.Text);//将TextBox1的内容赋值到保存的文件中去
                ss.Close();//必须关闭流
            }
        
        }






    }
}

完!!

 。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

绝对路径:带盘符的 G:720...

相对路径:根据你当前程序的目录下,找到某个文件夹 /css/css1.css

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

原文地址:https://www.cnblogs.com/wwz-wwz/p/5899400.html