代码改变世界

随笔分类 -  Component

[自定义Component]WinForm的AutoScale能力

2007-10-20 13:46 by Colin Han, 4397 阅读, 收藏, 编辑
摘要: AutoScale是.NET WinForm提供的一套让应用程序能够良好的在不同语言的操作系统和DPI设置下正常显示的功能。 在.NET 2.0中,微软对.NET 1.0中提出的WinForm的AutoScale能力进行了调整和增强。但是,微软始终没有跳出快速开发的圈子,因此,AutoScale做的并不彻底。其中有些工作还必须我们自己完成。 阅读全文

多线程下WinForm开发应该注意哪些问题?

2007-03-21 13:30 by Colin Han, 7051 阅读, 收藏, 编辑
摘要: 昨日,与一同事一起在修一个多线程下使用我们的控件产品的Bug。现将相关的经验发布在这里。1. 标准WinForm控件不支持多线程访问这一点,其实是Windows的机制。.NET 中每一个Control其实都是一个Window,使用这些Window,原则上都应该在创建这个Window的线程中。否则,会产生异常。这一点,似乎Windows也没有强制约束。某些操作可能会扔异常,而有些情况下却不会。比如:... 阅读全文

[Avalon] Avalon中的Conditional Formatting.

2005-08-22 20:52 by Colin Han, 1245 阅读, 收藏, 编辑
摘要: 大家应该都知道Excel中的Conditional Formatting的功能吧。我们可以设置一些条件,当条件满足时修改格子的格式信息。 例如:一个学生成绩表中,我们可以设置当学生成绩低于60分时,将文字颜色改为红色。 如果我们要在我们的应用程序中实现这样的功能,就必须写比较多的代码。但是,在Avalon中集成了对此项功能的支持。下面是一个XAML描述。 ... 阅读全文