C#使用用户控件导致界面崩溃问题的解决

C#编程经常使用用户控件,采用用户控件编辑器生成Dll再引用应该是正确选项,比较安全,但是编程时经常需要修改,也经常需要调试,来回重新编译DLL比较麻烦,所以一般都是直接与项目代码一起编程,但带来的后果就是高风险,很容易出问题导致使用该用户控件的界面崩溃打不开,这时千万别点“忽略错误”而强行打开界面,或者进Designer文件删除出问题的界面,否则界面上的用控件都移除,特别难恢复,就算费时费力重新加上,也会导致各种各样的问题。根据经验,总结户控件很容易导致界面崩溃原因及解决方法如下:
1.用户控件程序出现严重错误,导致用户控件从工具箱中被移除导致用户控件未注册。
解决:绝大多数都是这类问题,排查用户控件错误都能解决。我有几次是因为从Any Cup、X86和X64平台之间切换,导致引用SDK的Dll不兼容导致,更换为相应平台Dll后解决。
2.不小心移除用户控件的文件,如果再想加上,直接加是不行的,必须先以相同的名字建一个用户控件,然后再用原来的替换。
3.在X64平台下,用户控件容易出问题,X86下稳定很多,我经常在X86下编程,发布时如果必须用X64平台再转到X64平台编译.
4.要删除用户控件,千万不能在Designer.cs文件中删,必须在界面删除,而且一定要小心检查是否有事件函数,必须先把事件函数取消再删除。
5.在编写用户控件时,一定要高肉聚,低耦合,不能相互之间有包含,相互之间应通过属性、方法和事件在平台窗体上进行参数传递,否则一个出问题,全都完蛋。
6.用户控件的复用,可以在新项目中生成一个相同名字的用户控件,然后替换,但一定要把命名空间等改成与新项目相符。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值