winform
以有涯求无涯
.net开发程序员,学无止境
展开
-
DEV项目部署导出所有依赖的DEV插件dll文件
打开你的VS项目,菜单栏的“工具” 里有 DevExpress Assembly Deployment Tool 菜单,用这个工具可以导出当前项目使用的DEV 相关dll。有一个特别需要注意,如果你用了Dev 里的图标,注意把 DevExpress.Images.v{版本号}.dll 放到你的项目里。转载 2022-06-02 16:32:59 · 564 阅读 · 0 评论 -
DevExpress V14.1报表导出PDF文件文本换行问题
DEV报表导出PDF文件存在缺陷,因为导出PDF时,它的文本换行规则是根据英文语法来的,遇到空格或者英文标点符号,就判断为一个单词的结束,然后看当前行的剩余空间是否足够下一个单词的显示,如果不够,则换行。显然,这是不符合非英文文本的换行需求的,要想修改这个问题,只能用反编译来解决。原创 2022-06-02 16:19:12 · 933 阅读 · 4 评论 -
DEV GridView如何确定一行数据是否显示在当前滚动界面范围内
使用GridView1.IsRowVisible()方法原创 2021-07-29 14:22:41 · 267 阅读 · 0 评论 -
解决DEV dockPanel出现重复的问题
成为DEV控件的bug,解决办法:在创建dockPanel之后不要修改其Name,使用默认Name即可防止出现该问题。原创 2021-07-01 14:31:30 · 201 阅读 · 0 评论 -
使用DEV布局控件DockManager、DocumentManager将焦点切换到一个布局模块之上
使用DockPanel的Show()方法即可自动将焦点转至该布局模块之上,如:dockPanel1.Show();原创 2021-06-21 09:50:42 · 874 阅读 · 0 评论 -
c# TransparencyKey属性设置之后保证鼠标对透明位置依旧有效
只需要将TransparencyKey的颜色(r,g,b)设置为r值与值不同的颜色即可,如255,255,254原创 2021-02-26 09:05:49 · 574 阅读 · 0 评论 -
关于自定义控件的随笔
在VS设计器中使用自定义控件,需要先保证包含该自定义控件的项目已被成功编译,实际上该控件在被设计器使用之时,部分内部逻辑已经在被调用了,比如说如果重写OnPaint方法,那么其中的逻辑代码便会被调用,就像下面这个简单的控件:using System;using System.Collections.Generic;using System.ComponentModel;using Sy...原创 2020-05-08 17:08:12 · 180 阅读 · 0 评论 -
c#判断代码是否执行超时的几种方式
第一种,使用委托:第二种,使用Task:第三种,使用Timer:原创 2020-03-30 15:51:59 · 3120 阅读 · 1 评论 -
c#判断线程的状态,随笔
判断线程是否为未开启状态或者已停止状态,如果是,则新开线程执行方法,线程的状态判断最好是用&符的方式,不要用==号:if ((conectThread.ThreadState & (ThreadState.Unstarted | ThreadState.Stopped)) != 0) { conectThread = ne...原创 2020-03-25 16:54:28 · 1463 阅读 · 0 评论 -
GDI+发生一般性错误
Graphics类在执行DrawString或DrawLine时触发该异常的话,如果传参没有问题,那么就是由于Graphics类内部导致的,因为是偶发性的,所以我的解决办法是捕获这次异常,并且不外抛出,冷处理。...原创 2020-03-05 10:42:50 · 311 阅读 · 0 评论 -
如何提升vs调试模式的编译效率,缩短在项目无所谓的编译上浪费的时间
尽量减少主启动项目对其余项目的直接引用,也就是说不要直接引用项目,而是引用其生成的dll文件,可以将其余项目的编译结果dll文件和pdb调试信息文件直接编译至主启动文件的运行文件夹下,然后在进行启动调试时便不会再对无所谓的项目进行再度编译,可以快捷的进入调试之中。...原创 2020-03-02 17:04:34 · 300 阅读 · 0 评论 -
使用IntelliTrace进行bug重现以及辅助调试
相信许多朋友都遇到过一些难以发现的bug需要去进行触发,或者修改某些需要大量测试的代码,需要不断的去启用程序调试进行捕捉或程序场景还原。遇到这种情况,如果项目规模较小,那还好说一些,重新开启程序调试的时间并不太过折磨人,如果项目规模很大,光编译都要半天,那么重新启用调试的时间和精力成本就太大了。所以,我们需要IntelliTrace,IntelliTrace在VS2010版本开始推出,可以...原创 2020-01-14 10:09:25 · 402 阅读 · 0 评论 -
“LC.exe”已退出,代码为 -1,编译错误解决方式
项目挪了电脑,报出以上错误,最后找到了解决方法,特此作一下记录。删掉报错项目Properties文件夹下的licenses.licx文件即可,之后再进行编译,该错误就不会再报了。...原创 2019-11-25 14:05:38 · 293 阅读 · 0 评论 -
鼠标钩子锁住鼠标,防熊孩子神器
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Runtime.InteropServices;using System.Text;原创 2018-01-26 14:53:57 · 487 阅读 · 0 评论 -
没有注册类 (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))
在winform窗体项目中,一般遇到上述问题多是因为项目中用到的第三方组件未注册所导致,请确保需要装的软件都已经安装,如果实在不知道是哪个组件未注册,可以用以下方式来进行定位:打开报错窗体的设计代码,找到初始化控件的代码段,如下图所示:一般情况下,我们使用的控件都是系统提供的,只要系统环境没有问题,一般不会从系统控件上引发未注册组件的错误,既然系统组件生成方法的格式都是一样的,那么从代码中识别第三原创 2018-01-19 16:05:43 · 25376 阅读 · 0 评论 -
post方法
/// /// 通过post方式调用web方法 /// /// /// /// public static string HttpPost(string Url, string postDataStr) { //HttpWebRe原创 2018-01-29 15:05:55 · 575 阅读 · 0 评论 -
绑定反射dll的委托事件,实现窗口联动
namespace AssemblyTest{ public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, Ev...原创 2018-10-16 15:12:55 · 467 阅读 · 0 评论 -
c#注册全局热键简单应用
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Runtime.InteropServices;using System.Text;原创 2018-01-24 17:15:24 · 1111 阅读 · 1 评论