Winform学习笔记

Winform简介

桌面应用程序–ConsoleApp 、WinForm、WPF。–web应用程序而言。
Winform是什么?
.Net开发平台中对Windows From的简称,基于.Net Framework平台的客户端开发技术,一般使用C#编程。
Windows风格的控件,以及事件直接使用,快速开发,Windows窗体。
Windows应用驱动:客户端应用程序,显示信息,输入、网络与远程计算机进行通信。
事件驱动程序–点击窗体上的控件–触发事件–相应的操作

控件:输入的位置、单机的位置、选择的位置、显示的位置。

Windows应用程序 功能–控件 --属性,事件。

创建WinFrom应用程序步骤

创建项目-Windows桌面应用-项目名称、路径、解决方案
界面设计:布局–拖控件
设置属性:外观
编写代码:实现功能
保存项目:实时保存
运行

winForm介绍

输入或操作的对象、属性、方法、事件。
属性–外观 方法–功能 事件–行为
特征:可视化,与用户进行交互,属性和方法,事件 可供开发人员使用,可发布和重用

控件开发
  • 复合控件:各种控件组合起来,形成一个控件
  • 扩展控件:现有控件上派生出的一个新控件,为原有的控件增加新的功能
  • 自定义控件:Control类派生,提供入门性能,现有控件无法满足需求,提供入门性能
分类

一般控件

  • Button按钮
  • RadioButton单选按钮
  • CheckBox复选框
  • ComboBox下拉框
  • CheckedListBox带复选框的列表项
  • DateTimePicker日期时间选择控件
  • ListBox 列表项
  • ListView 已五种不同视图显示项的集合
  • MaskedTextBox 格式化文本框
  • MonthCalendar 月历
  • NumbericUpDown 可以增减数值的显示框
  • PictureBox 图像控件
  • ProgressBar进度条
  • RichTextBox 高级文本框
  • TreeView树形控件

容器

  • GroupBox分组控件,可以设置标题
  • panel分组控件 可以显示滚动条
  • TabControl选项卡控件
  • SplitContainer 面板控件

菜单

  • ContextMenuStrip 右键菜单
  • MenuStrip菜单栏

工具栏

  • ToolStrip工具栏
  • StatusStrip状态栏

数据

DataGridView数据显示
DataSet内存缓存

组件

  • Timer计时器
  • ImageList图像集合

数据、菜单和工具、组件、打印

program.cs文件

    internal static class Program
    {
        /// <summary>
        /// 应用程序的主入口点。
        /// </summary>
        [STAThread]//COM线程模型--单线程单元,如果没有他是无法工作
        static void Main()
        {
            //System.Windows.Forms.Application
            //提供一系列静态方法和属性来管理应用程序

            //启用应用程序的可视样式,一般写在第一句
            Application.EnableVisualStyles();
            //将CompatibleTextRendering设置为false,默认值
            Application.SetCompatibleTextRenderingDefault(false);
            //指定应用程序启动的第一个窗体
            Application.Run(new Form1());
        }
    }

项目结构

  • sln文件,解决方案文件,位置引用
  • 项目文件夹
    • bin文件夹存放编译结果,exe文件,debug调试,release发布
    • obj object编译过程中生成的中间临时文件。加快编译速度
    • csproj文件 项目文件,位置引用,双击打开项目
    • 窗体文件
      • Form.cs源代码
      • Form.Designer.cs窗体布局代码,自动生成对应的控件代码
      • Form.resx 窗体资源

Form介绍

可视化的图画,显示信息。通常通过添加控件和开发用户操作的响应。
继承于Form–System.Windows.Forms.Form

先执行InitiaizeComponent();窗体初始化操作,在执行load事件。

标签文本按钮

  • Label 一般显示不能编辑的文本或图像
    • Name 名称
    • Text 设置或获取文本信息
    • Image显示图像
    • ImageList图片集控件
    • Size Width Height
    • Tag 与控件相关的自定义数据
    • Enabled 是否启用
    • Location 位置 坐标
  • TextBox文本框 单行,多行 输入或获取数据
    • MultiLine是否多行
    • WordWrap是否自动换行
    • PasswordChar *
    • 方法AppendText指定文本追加到文本框尾部;Clear()清除、Focus()获取焦点、
  • Button 按钮控件、执行命令的、最常用的控件
    • BackgroundImage 背景图片
    • Image 图片
    • BackColor 背景颜色
    • ForeColor文字颜色
    • Visible 是否显示
  • RadioButton单选按钮,一组单选按钮中只能选择其中一个
    • Checked是否选中
    • AutoCheck自动更改其他RadioButton的选中状态,true
    • 事件:CheckedChanged选中状态改变时发生
  • CheckBox复选框
    • 一组复选框可以选择多个项
    • AutoCheck单击时自动更改选择状态,true不要修改
    • 三种选择状态:未选中,check选中,Indeterminate中间状态
    • ThreeStatus控制CheckBox三种状态还是两种。
  • ListBox列表框
    • 常用绑定方式
      • DataSource
      • DisplayMember
      • ValueMember
  • ComboBox下拉框,组合框选一个
  • NumbericUpDown控件
    • 数字显示框、向上、下按钮、来增加减少显示的数值
    • 方法:UpButton(),DownButton()
    • 事件:ValueChange
    • 数字数据,通过控件来调整值
  • PictureBox控件
    • 图像控件显示图像
    • 事件 Click
  • RichTextBox 富文本框,高级的文本输入和编辑功能
  • RichTextBox
    • 加载文件
    • 保存 rtf文件
    • 超链接 LinkClicked事件
    • 插入图片
    • 加粗,居中
  • Timer控件
    • 计时器,间隔时间,每隔这个间隔时间就会引发事件
    • System.Window.Forms.Timer Windows应用程序,独占一个线程,可以修改UI元素,基于UI的介绍
    • 如果单次执行时间超过间隔时间,会影响下次触发,精度很差
    • 动态时间显示,如果是Windows应用程序,System.Windows.Forms.TImer首选
  • System.Timers.timer基于服务计时器,轻量级
    • 时间间隔,触发Elapsed事件–执行操作,不是由Ui线程执行的
    • 不可以直接修改UI元素
    • 可以通过UI元素的invoke()完成,委托里修改UI元素–修改UI元素
    • 停止–stop
    • Forms.Timer UI线程执行,可以直接修改UI元素
    • 耗时操作,不会使UI失去响应,不会影响下一次触发
  • System.Threading.Timer基于线程
    • 多线程,计时器,轻量级,精度高
    • 提供以指定的时间间隔对线程池程序执行方法的机制
    • 单次运行时间过长,并不会影响下次触发,回调方法执行操作
    • 不可以直接修改UI元素,也不是由UI线程上运行,UI元素的invoke()来实现
  • ProgressBar控件,显示摸个操作的进度
  • ImageList控件 图片集合,用来存储图像资源,并在关联空间中显示出来
  • ListView 控件
    • 列集合、组集合、项集合
    • 添加、移除、存在、清空、索引访问、指定位置处插入
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值