zoukankan      html  css  js  c++  java
  • c#桌面窗体软件【学习笔记】

    1.打开流氓软件vs2017   //话说vs2017在用vs installer打开的时候必须要连接网络么,有时候未连接网络的时候installer直接卡在检查更新的界面。

    更新:这个一个白痴问题我后来才知道,vs当然可以不经过installer而直接打开,这样就可以跳过更新

    2.新建c#项目工程,这次就不要选择控制台程序了,选择桌面程序。

    3.出来两个界面,一个是staic main方法的代码文件,已经写好了,new一个窗体对象并且run它;

      还有一个界面就是可视化的组件界面,从左边工具箱中拖拽一些组件到中间的软件界面中,然后智能的vs就会在form类中自动填写代码,代码的内容就是新建你刚才拖拽的组件对象并且在初始化方法中初始化刚才你拖拽的对象【初始名称(name),位置(location),大小(size)什么之类的】:还有一个重要的初始化项就是事件委托:

         事件委托:

        比如说我拖了一个button组件进来,那么button这个对象能够做的事不多,被鼠标点击的时候发出一声惨叫(事件),在初始化的时候就需要你告诉程序,当button发出惨叫的时候谁应该听到或者是谁应该报警啥的。

    void System.EventHandler(object sender, ThresholdReachedEventArgs e);

    在初始化的事件,代码只使用了一个参数,就是旁听button惨叫的那个对象的名字:countbutton_Click

    countbutton_Click是在class form里面的一个public方法,这个方法的作用就是当他听到button的惨叫的时候就会执行,所以我们可以在countbutton_Click()这个方法里面编写代码了,这个机制就有点类似于观察者模式,或者订阅模式或者是QT里面的connect()连接函数;

    4,在新建好一些输出输出组件之后【textbox可以是输入框 算是输入数据的组件,也可以作为输出框,是输出数据的组件】,编写这些组件后面的事件处理方法就可以达到目的;

    5,组件之间的数据传输:

      

      textbox1.text可以直接拿到框里面的数据,不过都是字符串类型了,看你需要什么类型然后转换一下就好了。

      而text.box输出的话,直接赋值到textbox.text里面就好了

      ##还是需要赋值字符串类型的数据;

    以上是winform下玩的,后来和同事交流才发现人家一直用一种更厉害高端大气好用的XAML;(叫WPF吧,以前没有接触过,傻傻分不清)

     

  • 相关阅读:
    Ajax中onreadystatechange函数不执行,是因为放在open()后
    js调用ajax案例2,使用ok
    js调用ajax案例
    通过设置ie的通过跨域访问数据源,来访问本地服务
    Net 4.5 WebSocket 在 Windows 7, Windows 8 and Server 2012上的比较以及问题
    Net 4.5 WebSocket 在 Windows 7, Windows 8 and Server 2012上的比较
    windows 系统纯净版官网下载地址
    iOS:给Git仓库上传代码时,超过100M会被拒绝(例如github和oschina)
    iOS:Xcode8以下真机测试iOS10.0和iOS10.1配置包
    iOS:高德地图的使用
  • 原文地址:https://www.cnblogs.com/kita/p/10464225.html
Copyright © 2011-2022 走看看