C# WinForm盲点

最经再做一个考试系统,再次拾起对C#的记忆,却突然发现以前有很多细节没有发现,呵呵,今日将其记录下来。

1.要想通过窗体A传入参数来在窗体B中显示数据,则必须在调用窗体B.show()之前,在A的相关函数中调用B的自定义函数set()来传递数据,然后就可以在窗体B的Load事件中调用传入的变量。

盲点:设置需要传递的变量的函数调用不能再窗体的show() 函数之后,否则在Load事件中无法访问传递的变量;


2.在调用船体的showdianlog()函数时,窗体为模式对话框,会禁止鼠标访问其他任何窗体,因此此时为线程独占CPU。

盲点:如果需要多线程操作数据时,窗体显示不能为模式对话框。


3.在Panel中放一个FomrBorderSytle=NULL的窗体时,该窗体为Panele的子窗体,表现为该窗体在Panel的Controls集合中。

盲点:此时如果想通过Form父窗体按层次调用子控件内部的控件时,必须先找到该控件所在的父控件,然后使用父控件的Controls集合有子控件的ID来访问。


4.this.parnetform.close();   this.parentform.x;  如果接下来调用this.parentfrom.show()时会报错。若不调用的话,前两条语句可以正常执行。

盲点:原因似乎是在WINFORM窗体类内部函数中针对窗体的各种操作不是立即生效,而是在其所在函数执行完之后才生效的,且每个窗体执行完show()之后各自产生一个单独的线程。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值