Winform知识点

本文深入探讨了Winform的基础知识,包括控件使用、事件处理、布局管理以及与数据库的交互等核心内容,适合初学者及进阶开发者学习。
摘要由CSDN通过智能技术生成
1. 软件的架构方式
   a. C/S 架构  Clinet/Server 客户端/服务器
                客户端: 窗体应用程序 1个独立的可以使用鼠标来可视化操作的程序.
				        用户的每1个操作,只需要点击鼠标就可以完成.
						
   b. B/S 浏览器/服务器 程序运行在浏览器上.将程序写成1个Web应用程序.
   
   目前为止.Web应用程序是目前程序开发的主力.
   
2. 如何开发1个窗体程序.
   a. 创建1个窗体应用程序 即可搞定.
   b. 窗体上的各种东东,我们把它们叫做窗体的元素.窗体的控件.
   
3. 如何为窗体新增控件.
   a. 在工具箱中列出了窗体中最常用的元素.
      所有的Windows窗体分组中,将所有的控件放在其中.
	  将所有的控件根据他们的作用进行了多个分组 放在后面.
	  
   b. 在工具箱中找到你想要为窗体新增的控件.
      单击将其拖拽到设计窗体上
	  
   c. 这里唯一的难点. 就是你如何知道你想要的控件在工具箱中叫什么名字.
      1). 英文非常好,那就不是个问题.
	  2). 看图标
	  3). 常用的控件老师会讲
	  
   d. 窗体上的控件允许 删除(选中控件 delete)  
                       复制 选中控件  ctrl+c +v
					        按住ctrl+拖动控件.
						
   e.设置控件的对齐方式.
     选中控件 以白色选中控件为基准. 格式菜单  选择其中的对齐命令
	 
4. 如何修改控件的外观(状态).
   a. 窗体上可能会有很多的控件.
      那么你必须要确定你要修改那1个控件的状态.
   
   b. 选中你要修改状态的控件.
      右键 选择属性命令.
	  会弹出1个属性窗口.
	
   c. 在属性窗口中列出了选中的控件的各种状态.
      列出了1条1条的信息,这些信息分别用来控制控件的不同的状态.
      然后在这个窗口中. 找到我们要修改的属性, 找到之后更改值就可以了.
   
   唯一的那点:
   就是如何在属性窗口中找到我们要更改的属性的名称.
   
   很多同学会犯错:
   a. 要修改谁,一定要先选中谁!
   b. 当我们在属性窗口中操作的时候. 在顶部再次确认是不是选中的我们想要的修改的控件
   
5. 如何为控件绑定行为.
   需要首先确定如下几点:
   1). who 那么多的控件 你确定为那1个控件绑定行为.
   2). when 对于1个控件而言,它有很多的时机. 所以你要确定你在这个控件的什么时候做事情.
   3). what 当这个控件的这个时机到达之后,要做什么事情.  做的事情其实就是要执行1段代码.
   
   eg: 我们希望在button1被单击的时候,打印一句话,我被点了.
   
   步骤
   1). 在设计界面选中你要绑定行为的控件.右键 属性命令 弹出属性窗口.
   2). 单击闪电符号切换到事件页.
       在事件页中,列出了选中的控件的绝大多数的时机. 列出了控件的很多很多的时候
   3)  找到我们需要的那个时候. 双击它
       会自动的产生1个方法.
	   
   4). 这个方法很特殊. 当程序运行的时候,
       当控件的那个指定的时机到了的时候,就会自动执行方法中的代码.
	   所以我们只要将要做的事情写在这个方法中就可以了.
   
   
   同学犯错:
   1).  只有在程序运行起来以后,绑定的行为才有效果.
        不要在设计界面去点.
		
   2).
   
   正确的删除事件的方式
   1).事件页中.找到要删除的事件 右键 重置.
   2).先删除方法,编译会报错 找到报错的那1行 删除这行代码
   
   
6. 其他的常用事件
	实现的效果. 当鼠标进入到按钮的时候,就打印1句话."爷,你来了!"
	当鼠标离开按钮的时候 就打印1句话 "爷,你慢走!"
	


7. 窗体程序的文件组织形式
   1). Program.cs源文件中的Main方法 仍然是窗体程序的入口和出口.
   2). Main函数的最重要的一句代码 
       Application.Run(new Form1());
	   这个方法的参数是1个Form1对象. 言下之意 Form1是1个类.
	   
   3).Form1我们看到的是1个窗体.为什么说它是1个类呢?
      它确实是1个类. 这个类叫做窗体类.
	  这个类有点特殊. 在VS中有两种表现形式.
	  a.  纯代码的界面.
	  b.  设计界面.
	  
	  修改窗体类可以在纯代码的界面直接通过代码来修改.
	  还可以在设计界面通过托拉拽来修改这个窗体类.
	  
	  在设计面托拉拽,本质上是在修改这个窗体类的代码.
	  
	4). 在设计界面往窗体上拖拽1个控件,
	    实际上是为这个窗体类新增了1个控件类型的字段.
		每1个控件本质上也是1个类. 为窗体拖拽1个控件. 其实就是为窗体类新增了1个控件类型的字段.
		
		所以,窗体上的控件实际上就是窗体类的1个字段,. 窗体类的控件字段代表的就是窗体上的控件.
		
		每1个控件都对应1个字段.


8. 以按钮为例,讲解按钮的常用属性.
    Name属性,所有的控件都有. 决定了这个控件在窗体类中的字段的名称.
            所以,在同1个窗体中不允许有多个控件的Name属性的值相同.
			
    BckColor: 设置控件的背景色.
	BackGroundImage: 设置控件的背景图片.
	BackgroungImageLayout 设置背景图片的对齐方式.
	Cursor: 设置鼠标经过控件的样式
   FlatStyle:设置按钮的样式
   Font:设置字体
   ForeColor: 设置前景色 字体的颜色
   Image: 设置图片
   ImageAlign: 设置图片的对齐方式
   Location: 控件相对于父容器的坐标. 通过拖拽的方式也可以更改
   Size: 控件的大小 拖地控件的边缘也可以改大小
   Text: 指定按钮显示的文本
   Visible: 设置按钮是否可见.
   Enabled: 设置按钮是否可用.
   
9. 按钮常用的事件
   Click单击事件.


   
10. 窗体的常用属性.
    BackColor: 窗体的背景颜色
    BackGroundImage: 窗体的背景图片
    BackGroundImageLayOut: 背景图片的布局方式
    ControlBox: 设置标题栏的按钮是否可见. *
    Font: 设置容器上的所有的子控件的Font
    ForeColr: 设置容器上的所有的子控件的前景色
    FormBorderStyle: none 没有边框  *
                     FixedSingle: 禁止用户拖拽窗体的边缘来更改大小
    Icon: 设置窗体的图标
    Location: 相对于父容器的位置. 如果是窗体的话 那么就是相对于屏幕的坐标.
    MaximizeBox: 设置最大化按钮是否可以用 * 
    MinimizeBox: 设置最小化按钮是否可以用 *
    Opacity:设置窗体的透明度
    ShowIcon:设置是否显示窗体标题栏的图标
    ShowInTaskBar:设置窗体是否显示在任务栏.
    Size: 设置窗体的大小.
    StartPosition: 设置窗体第1次出现的位置. *
                   CenterSreen: 出现在屏幕的正中央.
    Text: 设置窗体的标题  *
    TopMost: 设置窗体是否置顶.

11. 窗体的常用事件
    Load事件: 触发时机: 在构造函数执行完毕之后,窗体显示之前.
	          一般情况下,我们在Load事件中用来初始化窗体上的控件.



12. 通过代码的方式来更改控件的属性
    a. 我们知道,当我们在设计界面往窗体上拖拽1个控件,实际上是为这个窗体类新增了1个控件类型的字段
	            这个字段代表了窗体上的控件,这个控件也就对应了窗体类中的这个字段.
				
	b. 语法:
	   1) 先确定你要修改的控件在类中的字段的名称.
	   2) 然后代码:   控件的字段的名称.属性名 = 值;   取值
	                  如果不知道是那1个属性,那么就回想我们在属性窗口中要改这个状态是改的那个1个属性.
	
	如果是要修改当前窗体的属性.  那么直接this.属性名 就可以了.
	
13. Label控件  用于在窗体上显示文本.
    Text属性,用于指定显示的文本.
	
	
14. TextBox控件
    作用: 让用户输入内容.
	Text属性: 用于设置文本框显示的文本.
	
	通过代码取出用户在文本框中输入的文本: 文本框对应的字段的名称.Text 通过这个属性就可以取出来.
	
	MaxLength:设置文本框可以输入的最大的字符数.
	PasswordChar 设置密码显示的字符  取出来的值仍然是真实输入的内容.
    
	
15. 当我们的程序中有多个窗体.
    当程序启动的时候,默认启动的是第1个窗体,如果我们要指定启动的窗体
	
	Main函数中的  Application.Run() 方法 其实就是在运行窗体.
	
	如果要更改启动的窗体: 只需要在这个方法传入对应的窗体对象就可以了.
	
	
	
	
16. 如何显示另外的1个窗体:
    窗体的本质是1个类,所以你要用它的话 必须要先创建1个窗体对象.然后调用这个窗体对象的Show方法 将其显示出来.
	
	
	如何关闭窗体:  窗体对象有1个Close()方法 调用这个方法就可以将窗体关闭.
	
	
	
17. 主窗体: 
    a. 什么是主窗体: 我们在Main函数中.new 的是那1个窗体 那么这个窗体就是主窗体.
	b. 主窗体的特点: 如果主窗体一旦关闭,那么整个窗体应用程序就会结束.
	
	所以,如果登录窗体是主窗体的话,那么主窗体不不能关闭的,因为主窗体一旦关闭 那么程序就会结束.
	主窗体我们一般情况下隐藏起来 Hide()方法.
	
	主窗体如果不关闭,程序是不会结束的.
	
	让窗体程序结束的代码: Application.Exit();
	
	
	
18. MessageBox.Show()用于向用户弹出1个对话框.

    a. 第1个重载 直接传入1个字符串 就会弹出1个对话框. 显示的消息就是我们传入的字符串
    
	b. 第2个重载
	
	   MessageBox.Show("亲,你真的要关机吗?", "系统提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                          消息框提示文本     消息框标题       消息框按钮            消息框图标.
						  

						  
	c.如果消息框有多个按钮,那么如何得到用户单击的是那1个按钮来关闭的消息框呢?
      Show方法有1个返回值 DialogResult 
	  返回的是用户单击的按钮对应的枚举项.
  	
 
19. PictureBox:  用于显示图片的1个控件.  
    Image属性: 指定它显示的图片.
	SizeMode: 设置大小模式.
	          StretchImage: 拉伸
			  CenterImage: 居中显示
			  Zoom: 等比例缩放.
			  
			  AutoSize: 自动的将PictureBox的大小调整为图片的大小.


	动态的为PictureBox指定显示的图片.
	为PictureBox的Image属性 赋值就可以了.这个属性的类型是1个Image
	是1抽象类.所以无法创建实例. 
	只有创建它的子类对象.
	
	
	ImageLocation属性,可以直接给1个字符串的路劲.














 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值