您的位置:首页 > 教育 > 锐评 > 在线ip代理网页_黄页企业名录_建站系统_优化二十条

在线ip代理网页_黄页企业名录_建站系统_优化二十条

2025/4/5 6:42:14 来源:https://blog.csdn.net/pu_yu_hun_jin/article/details/146966225  浏览:    关键词:在线ip代理网页_黄页企业名录_建站系统_优化二十条
在线ip代理网页_黄页企业名录_建站系统_优化二十条

控件的基类–Control

  • 用于 Windows 窗体应用程序的控件都派生自 Control类并继承了许多通用成员,这些成员都是平时使用控件的过程最常用到的。
  • 无论要学习哪个控件的使用,都离不开这些基本成员,尤其是一些公共属性。由于 Conlrol 类规范了控件的基本特征,因此在学习如何使用各种控件之前,先介绍 Control类
  • 可以简单理解为 WinForm程序 == 一些控件组合 + 事件 + 业务逻辑 组成。控件是非常重要的。

本节主要介绍 Control类的一些基本属性,剩下一些内容会留到后面在介绍如何自己开发控件时再讨论。

一、Control类的一些常用属性

1、“Name”属性
控件实例的名称,通常通过“属性”窗口设置,控件实例名称与控件变量名称相同,以便在代码中能够引用。
在这里插入图片描述

指示在控件的容器被调整时,控件紧贴着哪个方向的边沿。比如,一个窗口中放置了一个按钮,并将按钮的Anchor属性设置为Right+Boltom,当用户调整窗口的大小时,按钮将保持与窗口的底部和右边沿的距离不变。下图为窗口被调整大小之前按钮的位置,下图为窗口被调整大小后按钮的位置,可以看到,按钮始终紧贴着窗口的右下角不变。
调整前如下:
在这里插入图片描述

调整后如下:
在这里插入图片描述
3、“Margin和Padding”属性
Margin属性与Padding属性都表示边距。如图所示,A、B、C三个控件形成嵌关系假设控件B为当前控件,即以B控件作为参考。Margin指的是B控件与它的父容器A边沿之间的距离;Padding指的是控件B与它的子级控件C之间的边距。所以,Margin与Padding是相对值。
在这里插入图片描述
4、“Visible”属性
指示控件是否可见,如果为true,则用户可以看到该控件,否则用户将看不到该控件
5、“Enabled”属性
指示控件是否可用。如果为true,说明控件处于可用状态;如果为false,表示控件不可用、控件将不与用户进行任何交互
6、“Font”属性
表示控件中所呈现文本的字体。包括字体、字体大小、是否加粗等
7、“ForeColor、BackColor和Backgroundlmage”属性
ForeColor属性表示前景色,即控件上星现的文本的颜色;BackColor展性表示控件的背景色;BackgroundImage属性可以提供一个像实例来绘制控件的背景。
8、“Dock”属性
指示控件如何填充容器中的可用空间。如果设置为Fill 则表示控件将占满所有可用空间;如果设置为Top,则表示控件将占用容器上方的所有空间;如果设置为Left,则表示控件将占用容器的左侧所有空间;如果设置为Right,则表示控件将占用容器的右侧所有空间;如果设置为Bottom,则表示控件将占用容器的下方所有空间;
9、“Location与Lef、Top”属性
表示控件在容器中的位置,如果控件是窗口,那么它的位置就相对于桌面坐标(屏落坐标)而定。由于Location属性的类型是Poini结构,是值类型,因此不能直接修改其X和Y的值,而是向Locaton属性赋一个新的Point实例;也可以直接设置Lef属性(X坐标)和Top属性(坐标)的值来调整控件的位置
10、“Size与Width、Height”属性
表示控件的大小,由宽度和高度两个值决定。与Locaton属性一样,Size属性的类型是Size结构,是值类型,不能直接修改,必须将一个新的Size实例赋给Size属性;或者直接修改控件的Width和Height属性
11、“Cursort”属性
获取或设置当鼠标指针位于控件上时显示的光标。


二、Control类的一些常用事件

1、Click:当控件被单击时发生。
2、DoubleClick:当控件被双击时发生。
3、GotFocus 和 LostFocus:分别当控件获得或失去焦点时发生。
4、KeyDown、KeyPress 和 KeyUp:分别当控件有焦点时,按下、按下并释放、释放一个键时发生。
5、MouseDown、MouseEnter、MouseMove、MouseHover、MouseLeave 和 MouseUp:分别当鼠标在控件上按下、移入、移动、悬停、移出和释放时发生。
6、Paint:当控件需要重绘时发生。
7、Resize:当控件的大小发生变化时发生。
8、DragDrop、DragEnter、DragLeave 和 DragOver:与拖拽操作相关的事件。

三、控件布局时注意点:控件的Z顺序

什么是控件的Z顺序?当窗体或容器控件中的控件在布局过程中发生重叠时,会出现层次性,Z顺序较大的控件会遮挡Z顺序较小的控件,即放在顶层的控件会挡住放在底层的控件。Z顺序大致结构如图所示:
在这里插入图片描述

Winform Z顺序核心解析

1、Z顺序基础概念

  • Z顺序(Z-Order)是Winform中决定控件堆叠层级的属性,沿窗体的Z轴(深度方向)排列。Z序值较高的控件会覆盖较低值的控件,离窗体越近的控件优先级越高‌。

2、设计时调整Z顺序

  • 图形化操作‌:
    右键目标控件 → 选择【置于顶层】(Bring to Front)或【置于底层】(Send to Back),直接调整其显示层级‌。
    在这里插入图片描述
    点击“置于顶层”后,A控件会跑到B控件上方,如下图:
    在这里插入图片描述

‌布局影响‌:
控件停靠(Dock属性)时,Z顺序会影响停靠优先级。较近的控件优先占据停靠区域,较远控件则在剩余空间中调整‌。


3、编程方式动态调整
‌常用方法‌:

  • BringToFront():将控件提升至最顶层。
  • SendToBack():将控件移至最底层‌。

‌精细控制‌:

  • 使用Controls.SetChildIndex()方法,通过指定索引值调整子控件的Z序。例如:
this.Controls.SetChildIndex(specificControl, 0);          // 置顶
this.Controls.SetChildIndex(anotherControl, Controls.Count -1); // 置底

此方法适用于容器内的子控件层级调整‌。


4、注意事项

  • 性能优化‌:
    若父控件包含大量子控件,频繁调用SetChildIndex可能影响性能。建议减少调用频率或批量操作‌。

  • 跨线程操作‌:
    在非UI线程中调整Z顺序时,需通过Invoke或BeginInvoke方法确保线程安全‌。

  • 视觉效果增强‌:
    可通过调整控件的Opacity、BackColor等属性,辅助区分重叠控件的显示层次‌。


5、Z顺序与布局优先级

  • Z顺序不仅影响显示层级,还与控件的停靠(Dock)、锚定(Anchor)等布局属性交互。例如:停靠控件按Z序从近到远依次布局,后停靠的控件可能被覆盖‌。

总结:本章主要讲解了,控件的基类Control的常用属性、Control类的一些常用事件,还有控件的Z顺序,掌握他们,对于学好WinForm 是至关重要的。当然,随着后面的章节,大家会掌握的越来越熟练。如果对你有所帮助的话,欢迎点赞、关注加收藏!!!

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com