勇哥注:这是篇转自公众号“HwLib慧兰博”的文章。这个公众号貌似是一个团队在运营,都是工业自动技术相关本文介绍的是皮肤控件IrisSkin,在之前勇哥用的是DotNetBar,这个东西是好是好,只是比较慢。而IrisSkin速度如何,各位可以体验一下。 WinForms由于先天性的缘故,对于酷炫的界面实现起来比较困难。这就导致早期很多公司或者团队都在致力于开发针对WinForms的换肤控件。不过随着互联网行业的兴起,桌面端逐渐衰落,慢慢这些换肤控件也已转入维护周期,很少有
如下图所示,自定义控件的form上面从下到下依次是:treeviewtextboxtextboxtextbox当拖动fom右边界调整宽度时,会发现最后一个textbox不会适应form宽度的变化。而它上面的三个控件则可以。当勇哥把它上面的控件复制下来替换它后,就可以自动适应了。这说明有一个textbox的属性在发挥作用,但有趣的是不是dock属性。暂时找不到是什么属性在发挥作用。一直以为只有dock这样的属性才可以发挥自适应屏幕大小的功能。没想到还有本文发现的这个功能。-------------
勇哥注:在解决“文件被占用”的问题时,有时候除了即时释放资源句柄,还需要使用对象的深度复制,这样就相当于斩断了原对象的占用。==========正文开始===================MemberwiseClone 方法创建一个浅表副本,具体来说就是创建一个新对象,
然后将当前对象的非静态字段复制到该新对象。
如果字段是值类型的,则对该字段执行逐位复制。如果字段是引用类型,
则复制引用但不复制引用的对象;因此,原始对象及其复本引用同一对象。为了实现深度复制,我们就必须遍历有
如下图所示:bundleRuntime.GetFirstOrDefaultService<>为空,因此程序直接退出。不用怀疑IMainForm有问题。勇哥2020/8/8注:这篇水贴烂尾了,因为勇哥至今仍然不知道这是为什么,只知道是跟类库引用后的冲突有关系。人家封装的东西,出问题了真不好找原因。投降了……未完待续…………--------------------- 作者:hackpig来源:www.skcircle.com版权声明:本文为博主原创文章,转载请附上博文链接!
原来的工程只有解决方案Loader、MainForm、netMarketingCore。现在因为需要引入netMarketing、sharClass、UserUI。全部重新编译,发现许多报错,其中有netMarketing中的一些类报引用问题。实际上,那些报错的位置是没有问题的。因此,应该是引用混乱的原因。解决方法是勾选报错的解决方案,然后在“依赖于”下面勾选要依赖的项目,然后选中解决方案根,全部重新编译即可。一直以来,没有注意到这个地方有什么作用。用了vs十几年,没想到还是有些地方不求甚解,汗
今天调试程序时,发现运行程序没问题,退出程序时出现下面这个报错。未能加载ntdll.pdb调试菜单->选项,然后选择“符号”,勾选“Microsoft符号服务器”,设置下载目录,确定。重新编译运行程序后,会从网上下载各种符号到本地。这个过程比较缓慢。然而,加载符号后,退出程序时还是报异常。跟之前的报错区别是:多了一点信息。因为网上有人发现如果程序写得有问题,也会出现这个报错信息,因此勇哥在想是不是代码有什么问题?。。。。然鹅,回家后跑同样的程序,退出时却没有报错!也许是工作电脑的系统的问题
起因先是看到git shell指向的是一个appref-ms文件。找开目录,它未显示文件后缀名,显示的是一个叫application reference 的文件类型。从来有见过这种类型,于是查了查调查它是一个叫clickonce技术的文件。ClickOnce是微软公司开发的一门用于在网络上发布应用程序的技术
ClickOnce使得用户可以从支持ClickOnce的网页中点击一个链接来运行一个程序。
ClickOnce的设计目标是使得应用程序的启动和升级更加容易。
ClickOnce的安
勇哥把上一次的流程图版的MTV改了一下,这是最终版,各位看看效果吧。与上一版不同的是如下几点:(1)可以docking,也就是窗体停靠(2)mtv主功能的form是做为一种插件被载入的在下面的演示中,大家看到mtv的搜索功能,是通过流程“搜索歌曲”来完成的。这个搜索功能用流程图来画,也只是作为一种演示而矣。在这个基础上,可以开发视觉相关的代码活动了,以添加视觉相关的工具。源码下载链接:-------------------------------源码包括6个版本的程序,其中mvt_winform
例如下面的WFDesign,它是一个接口IWFHost。 public IWFHost WFDesign = null;如果你在Run上面按F12键,只会跳到接口IWFHost的定义Run上去。这样子是不是让你很恼火呢?^_^那么如何才能跳动接口IWFHost的实现类对应的函数上去呢?如果你是vs2015以上版本,那么你可以 右键->转到实现(快捷键:Ctrl+F12)即可。勇哥用vs2017试了下,真得很爽啊!!因为vs2017
..\的写法是相对路径。“./”:代表目前所在的目录。“../”:代表上一层目录。以”/”开头:代表根目录。下图中的路径是: ..\..\bin\Plugins\DateServer\表示的是当前目录的上一级的上一级的Plugins\DateServer 目录。