关于控件的句柄随笔

在使用c#语言时,创建一个控件时,并不意味着该控件的句柄被创建,一个控件的句柄被创建时,必然会触发该控件的Load事件,如果在调用某些代码之前要确保控件的句柄被创建,可以使用控件的Load事件或者HandleCreated事件,一个控件在触发这两个事件时,其句柄一定是成功创建的状态。

如果有一段代码要操作UI控件,但你又不确定这段代码将来一定会在ui线程上调用,那么就需要使用控件的InvokeRequired属性来决定是否从ui线程上操作该控件了。

该属性为true时,表明当前线程并非创建控件句柄的线程,需要使用控件的Invoke调用操作控件的代码。该属性为false时,说明当前线程为创建控件句柄的线程,或者控件的句柄还没有被创建,则不需要使用控件的Invoke调用操作控件的代码。

相关推荐
yngsqq3 小时前
005集—— 用户交互之CAD窗口选择图元实体(CAD—C#二次开发入门)
windows·c#·交互
dax.net6 小时前
在C#中使用适配器Adapter模式和扩展方法解决面向的对象设计问题
设计模式·c#
杰尼杰尼丶8 小时前
MQTTnet.Extensions.ManagedClient客户端连接
mqtt·unity·c#
新手unity自用笔记8 小时前
项目-坦克大战学习笔记-按键按下控制方向
笔记·学习·c#
君莫愁。9 小时前
【Unity】双摄像机叠加渲染
unity·c#·游戏引擎
Vae_Mars9 小时前
WPF中的switch选择
开发语言·c#
qq_2131578910 小时前
(c#)unity中sqlite多线程同时开启事务会导致非常慢
数据库·sqlite·c#
VXbishe10 小时前
(附源码)基于springboot的“我来找房”微信小程序的设计与实现-计算机毕设 23157
java·python·微信小程序·node.js·c#·php·课程设计
Sliphades12 小时前
多文件并发多线程MD5工具(相对快速的MD5一批文件),适配自定义MD5 Hash I/O缓存。
c#
weixin_4640780714 小时前
wpf加载带材料的3D模型(下载的3D预览一样有纹理)
c#·wpf