WinForm控件学习笔记【第一天】——Control类

时间:2023-03-08 15:42:21
WinForm控件学习笔记【第一天】——Control类

  感悟:明天就又是学校双选会的日子了。两年我都参与了学校的双选会的服务工作,现在该是双选会服务的我时候了。怎么样找到一份好的工作,或者说怎么样学习才能符合企业对人才的要求,我现在也是很迷茫。平时都是在看似忙碌,每天敲代码,随着自己的兴趣去学习,也不知道自己现在是个什么水平,也许明天去双选会面试一番就都更清晰一些。

  两年了,敲了两年的代码了,这期间会逐渐的形成了自己的学习风格,可是有一样我觉明确的知道,学习总结这是很重要的,可我却没有做好,看看之前发过的随笔就知道了。对于C#的基础语法已经很熟悉了(PS:按企业要求我要说精通C#语法了)。

  在学校的网络中心,有自己的桌子,晚上就自己,很好的学习环境。打算每天晚上写一篇学习总结。现在就开始吧,Let’s Go!

  System.Windows.Control 几乎是每个控件和窗体的基类,派生自 System.ComponentModel.Component 类。Control类为它提供了一个很长的功能列表,就是绝大多是控件所共有的一些属性。

  大小和位置

属性名

属性值

备注

Height

Int

Width

Int

Top

Int

Bottom

Int

Left

Int

Right

Int

Size

Size

Size结构包含X、Y坐标

Location

Point

Point结构包含X、Y坐标

Dock

DockStyle

确定子控件停放在父控件哪条边

Anchor

AnchorStyles

把子控件的一条边锚定到父控件的一条边

  用法与用例:

  设置窗体启动位置居中:

        private void Form1_Load(object sender, EventArgs e)

        {

            this.Left = (Screen.PrimaryScreen.WorkingArea.Width - Width) / 2;

            this.Top = (Screen.PrimaryScreen.WorkingArea.Height - Height) / 2;

        }

  和

            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;

  Dock设置与效果:

WinForm控件学习笔记【第一天】——Control类

  设计代码,在Form1.Designet.cs文件里面

            this.textBox1.Dock = System.Windows.Forms.DockStyle.Top;

  外观

属性名

属性值

备注

BackColor

Color

背景色

ForeColor

Color

前景色

BackGroundImage

Image

背景图像

BackColorImageLayout

ImageLayout

设置控件的显示方式

Font

Font

Text

String

  用法与用例:

  1.如果同时设置了窗体或控件的背景色和背景图像则显示背景图像,注意有的控件是没有背景图像这个属性的。

  2. 设置控件的显示方式这一属性,ImageLayout是一个枚举类型“Center、Tile、Stretch、Zoom、None”,用的还算多。

  3.Font和Text一般要先在属性里设置好实际运行过程中Text的赋值会用的很多,Font基本不会变。

  用户交互操作

常用事件

备注

Click

鼠标单击事件

DoubleClick

鼠标双击事件

KeyDown

按下按键事件

KeyPress

控件具有焦点用户释放按键事件

KeyUp

释放按键事件

MouseDown

鼠标按下

MouseUp

鼠标释放

MouseEnter

鼠标进入控件可见区域

MouseLeave

鼠标离开控件可见区域

MouseHover

鼠标进入控件可见区域静止一段时间后

  用法与用例:

  1.触发鼠标双击事件一定会先触发鼠标单击事件。

  2.MouseDown和MouseUp会把MouseEventArgs作为其参数。其中MouseEventArgs包含单击的按钮、按钮被单击的次数、鼠标制动器的数目和鼠标当前的X、Y坐标。需要处理这些信息就不能用Click和DoubleClick事件。

  3.对应的KeyPress事件接收一个KeyPressEventArgs,它包含被按键的字符值KeyChar。

WinForm控件学习笔记【第一天】——Control类

  Windows功能

  支持与Windows交互操作的功能包括Handle和IsHandleCreated属性。Handle属性返回一个包含控件Windows句柄的IntPrt。窗口句柄是唯一表示窗口的一个很难懂的值,用到的地方很多。

  为了访问Windows消息,可以重写WndProc()方法。该方法把一个Message对象作为其参数。Message对象是Windows消息的一个简单封装器,用到的次数很多。

  其它功能

  数据绑定……

  Invalidate()方法可以重绘失效区域……

  等等,还有很多就先不说了,以后慢慢写。明天会写一些控件的用例,这个写这应该会舒服些。