摘要:
横版模式下,设置宽度保存后,载入数据预览时,宽度会恢复到29.7(a4). 避免采用横版,而是直接按照横版长宽设置纵版尺寸. 阅读全文
摘要:
窗体句柄的创建 窗口创建时,窗口并没有创建句柄,只有Application.Run(form)或者form.Show()之后才有句柄,即窗口只有显示或者启动消息循环后才有句柄!如果创建form之后,主线程中调用form.Handler,如果句柄尚未创建,引用该属性将强制创建句柄,对习哦他能够内的逻辑 阅读全文
摘要:
排查故障 通讯失败,观察通讯日志发现发送但未接收.查看Wireshark监控,发送与响应均有记录,因此发送模块没有问题.问题在于监听部分. 360阻塞监听 在一台新电脑上安装了程序,但发现开启程序后Listener(UdpClient)在执行Receive(ref IPEndPoint)时被强制停止 阅读全文
摘要:
在循环中使用时需要注意 如果不赋初值创建基础数据类型被某函数调用通过out关键字标识调用时,如果处于循环之中,则该变量将不再定义时归初值。 案例: foreach (TestUnit testUnit in ti.TestUnitList) { ushort sv1, sv2, dv1, dv2; 阅读全文
摘要:
.NET 3.0 之后新增的一种特性,叫“扩展方法” 扩展方法能够向现有类型“添加”方法,而无需创建新的派生类型、重新编译或以其他方式修改原始类型。扩展方法是一种特殊的静态方法,但可以像扩展类型上的实例方法一样进行调用。 public static bool IsNullOrEmpty(this s 阅读全文
摘要:
有时需要区分不同的自定义错误,也可能需要特定的错误参数,此时需要自定义一些Exception类,而方法也很简单,简单的说需要继承Exception及其构造函数。 有时为了只调用特定参数,可以把其他构造函数设置为Private,即可隐藏。 public class CheckRuleException 阅读全文
摘要:
foreach (string s in Enum.GetNames(typeof(WallKind))) { WinFormTools.MsgBox(s); } 阅读全文
摘要:
Directory.GetFiles(string, string) 第二个参数形为 *.后缀名称. 阅读全文
摘要:
什么时候使用抽象函数? 首先抽象函数必然在抽象类中,以父类的形式出现。 当子类均具有相同方法时,可以由于父类定义。 当不同部分子类有不同方法时,可以override该方法。但是,调用时必须以子类的形态出现,否则依然调用父类方法。 为避免出现子类父类方法调用不清的问题,将父类的方法设置为抽象类。子类单 阅读全文
摘要:
预处理指令,编写位置之后有效。 区域指令 #region #endregion 预定义 #define Debug 取消预定义 #undef Debug 条件预处理指令 #if #elif #else #endif 警告预处理指令 #warning here is a warning 错误预处理指令 阅读全文