zoukankan      html  css  js  c++  java
  • WinForms: GUI编程

    gui代码是事件驱动代码。两种gui应用:WInForms 和 WebForms.

    事件驱动:用户个人行为都被封装在很多事件中,事件由操作系统来安排顺序执行。

    事件处理:事件被handler处理

                      一般来说,这些处理器方法的代码是卸载可视化界面的后面。

                      .NET 自动处理事件并生成一些基础的调用事件处理器的代码。

    事件映射:通过委托。

    事件处理器参数:

    两个参数: Sender:  表示哪个对象生成了事件

                         EventArgs: 例外的特定事件信息

    6

    通用验证方法:通用文本框验证方法。

    1

    一般事件处理器

    允许把多个事件映射到同一个处理器

    2

    动态映射

    处理器可以在运行时动态增加或移除映射(+=和-=)

    3

    事件处理器总结

    你可以“多对一”进行事件处理:不同的事件对应到相同的处理程序。

    你也可以“一对多”进行事件处理:一个事件触发可以有多个动作。

    WinForms

    WinForms = .NET桌面GUI

    使用 WinForms Application模板建立

    7

    实现

    定义在system.windows.forms 名域

    forms 从S.W.F.Form类继承行为

    用法(很像VB6)

    相同的体系:控件,属性,事件

    相同的控件组:文本框,按钮,下拉框

    强调简单实施:拖拉,放,编码

    改进:

    完全面向对象并可以跨语言通用

    有一些更强大的控件(DataGrid)

    对于数据绑定有更好的支持

    更好的resizing 支持(Anchor controls; AutoScroll form)

    good-bye twips, hello pixels

    启动Form

    在VS中生成Main代码中自动实例化一个From的对象

    Application.Run(new form1())

    Best Practice

    1.把Main 方法移出 From Class.

         Main更容易找到(不要成为gui的一部分)

         Main很有可能还有其他的职责,这些职责与GUI没有关系。

         一般使用App当作类名

    8

    2.一般启动时的通用异常处理

    9

    通常异常处理器

    最简单的处理是日志然后终止程序

    10

    3.使用try-catch来捕获异常

    11

    WinForms 编程

    WinForms 程序设计是一个很大的领域:

    1.使用控件

    2.建立自定义控件

    3.多线程

    4.MWC设计模式

    .......

    多Form应用程序例子

    输入customer id(从一个窗体调用另一个窗体)

    12

    建立,展现

    13

    验证输入

    14

    数据绑定

    1.控件可以绑定数据源来获得数据

    控件可以绑定整个集合collections

    控件可以绑定单个对象属性

    2.数据绑定在.NET中是广泛使用的

    自动地reads & writes 绑定的数据

    例子:

    数据绑定在list上:

    15

  • 相关阅读:
    设计模式——原型模式
    设计模式——复合模式
    设计模式——桥接模式
    建筑模式
    设计模式——单键模式
    工厂模式
    抽象工厂
    设计模式——适配器模式
    一个简单的文件上传功能控件(原创)
    算法题:用php生成excel列
  • 原文地址:https://www.cnblogs.com/HuXiaoxia/p/3421834.html
Copyright © 2011-2022 走看看