
DotNet时代
文章平均质量分 76
BlueDog
一个业余程序员,一个业余羽毛球爱好者,一个业余星际选手,一个年过三十的老人。
展开
-
高效的TreeView构建方法
高效的TreeView构建方法 网上一直有朋友说.net上的TreeView不够快,而且也不方便。那么真实的情况是否如此呢。我做的一项目中需要一个快速的Tree,它的数据源是MS SQL,其对应表中记录的结构如下: ID原创 2005-12-25 20:24:00 · 5597 阅读 · 7 评论 -
新版压缩库发布
新版压缩库发布代码下载地址:官方下载:见本博客左侧栏Gmaile Drive的下载方式 //Code/CSharp/ExpertLib/Compress/Exe.RAR (演示程序)//Code/CSharp/ExpertLib/Compress/Code.RAR(源代码)优快云下载:演示程序地址: http://download.youkuaiyun.com/sourc原创 2007-07-02 02:29:00 · 4019 阅读 · 3 评论 -
结构化存储C#类库
结构化存储C#类库 官方下载:见本博客左侧栏Gmaile Drive的下载方式//Code/CSharp/ExpertLib/Storage/Storage.RAR优快云下载地址:http://download.youkuaiyun.com/source/211119结构化存储不知什么原因,大家用得很少,我想可能是因为它很难用?太多的参数,太复杂的调用,太多要注意的地方。但是它原创 2007-07-17 00:22:00 · 4846 阅读 · 8 评论 -
Dotnet专业组件开发揭密(一)
Dotnet专业组件开发揭密(一) --扩展功能提供程序本文代码下载官方地址://Code/Csharp/BlogCode/ExtenderProvider.rar优快云地址:http://download.youkuaiyun.com/source/231264 很多人会以为写组件是件容易的事,也许某些方面是这样的,比如你可以很简单地实现一个自定义的功能。但是写出来的组件好象跟原创 2007-08-19 23:18:00 · 2493 阅读 · 2 评论 -
Dotnet专业组件开发揭密(二)
Dotnet专业组件开发揭密(二)--TypeDescriptor内部机制及其应用(上) 本文代码下载官方地址://Code/Csharp/BlogCode/TypeDescriptorDemo.rar优快云地址:http://download.youkuaiyun.com/user/BlueDog 本篇要讲述的是System.ComponentModel空间里最神奇的类,也是最原创 2007-08-22 01:28:00 · 2735 阅读 · 4 评论 -
Dotnet专业组件开发揭密(三)
Dotnet专业组件开发揭密(三)--TypeDescriptor内部机制及其应用(中) 本文代码下载官方地地://Code/Csharp/BlogCode/TypeDescriptionProviderDemo.rar优快云地址:http://download.youkuaiyun.com/user/BlueDog 上一篇我们讲到了如何利用ICustomTypeDesc原创 2007-08-23 23:56:00 · 2515 阅读 · 1 评论 -
Dotnet专业组件开发揭密(四)
Dotnet专业组件开发揭密(四)--TypeDescriptor内部机制及其应用(下) 前两篇文章里我们TypeDescriptor是用来返回一个类的属性或事件描述符的,VS中使用的PropertyGrid就是通过它来取得一个类的属性的。而不是我们以为的是通过反射来做的。那么它的内部机制是如何的?TypeDescriptor它会进行几个判别,一是查看类是否实现了ICustomTy原创 2007-08-29 01:36:00 · 2268 阅读 · 1 评论 -
2008年第一份源码
2008年第一份源码 代码下载地址:优快云 Download:http://download.youkuaiyun.com/source/351523官方地址:(下载方式见左边栏)GmailDriver:/Code/Csharp/ExpertLib/Console/ConsoleClassDemo.Rar雪停了,冰融了,太阳出来了,一切又恢复了正常。春节在家闲着也是闲着写了原创 2008-02-09 16:59:00 · 1698 阅读 · 2 评论 -
一个COM调用时出现的错误及解决办法
一个COM调用时出现的错误及解决办法这两天一直在用COM里的复合文档来做个东东。我通过C#的平台调用方法使用IStorage和IStream这些接口的,并写了一个流类来包装IStream。在“调试”模式下,运行得很好,但是在“Release”下,则报错了!症状为:在长时间读写一个复合文档时,开始是可以正常运行的,但是一段时间后,就会报错说“试图使用一个不存在的对象异常来自原创 2008-02-12 03:42:00 · 2622 阅读 · 0 评论 -
Dotnet终极压缩
Dotnet终极压缩 其实是没有什么是终极的,一个抓眼球的标题而已。CLR2.0里带来很多新东东,其中System.IO.Compression就是一个新的命名空间,里面包括两个类GzipStream和DeflaterStream,它们都可以用于解压缩,但是不支持ZIP、RAR等常用的压缩文件,RAR是涉及到专利的问题,而ZIP虽然格式是公开的,但是我想微软不太想支持,它可能更想大家用它自原创 2006-12-29 01:24:00 · 4757 阅读 · 5 评论 -
人民币大小写转换 C#版
using System;namespace ExpertLib.ChineseSpecial{ #region RMBException /// /// 人民币转换的错误 /// public class RMBException : System.Exception { public RMBException(string msg)原创 2006-12-15 01:35:00 · 5457 阅读 · 1 评论 -
Visual Studio 2008 十大新功能
不仅只是编辑器——写在Visual Studio 2008发布之前 VS2005还没有最终稳定的版本,但是我想在微软的某个办公室,一个项目组正在研究发展Visual Studio 2008这个版本。我看了一下表,现在的时间是公元2006-3-9日,离微软发布VS2008版的α版还有整整18个月,我不知道它最终会是如何的,但是它一定具有以下十项激动人心的特点: No.1原创 2006-03-09 23:30:00 · 13053 阅读 · 15 评论 -
Vista之初体验
Vista之初体验今年比较闲,也正好前不久下了一个Windows Vista中文测试版的安装印象。好家伙,3个G,现在真是硬盘不要钱了,MS不知道为什么要搞这么多东东放在里面。先安了再说,在安装之前,让大家流流口水,看看我办公室最近配置的机器,是在一款ACER机器上换了点东东。呵呵。CPU:AMD Athlon64 X2 3800+(盒) 内存:DDRII533 1G 两条显卡原创 2006-09-04 22:13:00 · 1965 阅读 · 0 评论 -
简单而复杂的未来(一)
简单而复杂的未来(一)——.Net时代C/S、B/S、Desktop程序一统解决之道 这些天我一直在思考一个问题,C/S,B/S、Desktop应用程序有没有可能最后统一起来,用户可以不需要知道程序是什么类型,程序员可以只写一遍代码就可以在三种模式下运行。本文就是讨论这种可行性。C/S、B/S与Desktop应用程序倒底有没有本质区别呢,应该说看上去有区别,我们来看下面这张表(对W原创 2006-04-29 23:02:00 · 2066 阅读 · 2 评论 -
DotNet下使用GDI+绘图时资源是否需要释放
DotNet下使用GDI+绘图时资源是否需要释放 可能很少有人注意到这样的问题,最近我在写一个绘图模块的时候,忽然意识到这好象是一个问题,因为不过我们以前用GDI绘图时,书本的代码会明确地告诉你一定要删除自已创建的绘图对象,因此我们常常写完了SelectObject,一定会马上写一个DeleteObject,以防止资源泄漏。可是,当你来到的DotNet的环境下,你随便打开一本关于绘图的原创 2006-05-08 00:51:00 · 5807 阅读 · 2 评论 -
DotNet剖析系列(一)
DotNet剖析系列(一) ——窗口从生到死 如果你的第一个Windows程序是从C#开始的,并且你是使用VS.net的模板来创建程序,可能你会习惯于看到以下的代码,也许并不会想到它背后有些什么运作。[STAThread] static void Main() { Application.Run(new Form1());}原创 2006-05-13 22:06:00 · 2660 阅读 · 2 评论 -
C#进行平台调用时利用C++头文件的小技巧
C#进行平台调用时利用C++头文件的小技巧 我正好在做一个控件,其中需要引用WinXP自带的UxTheme.dll,因为我想生成一个纯粹的C#程序,而不是利用Manage C++来成一个托管类的动态库来作为C#程序的基础,因此想到需要转换定义。UxTheme.dll共有47个命名函数,找到VC7(我使用VS2003)中的对应头文件UxTheme.h,在UltraEdit32这个工具中很原创 2006-05-26 01:23:00 · 8216 阅读 · 1 评论 -
DotNet剖析系列(二)——控件继承
DotNet剖析系列(二) ——控件继承 首先想要告诉大家的是MS一个龌龊的行为,一个人所共知的行为。而这个问题在所有MS提供的基本控件里都存在,比如我们想要对ComboBox这个控件稍微的扩展一下,加上一点点我们自已的东东。结果是很麻烦,很麻烦,甚至你都没办法使用继承来重载OnPaint。因为正常情况下,OnPaint在这原创 2006-06-13 22:40:00 · 2951 阅读 · 4 评论 -
新版公农历转换类(C#)
using System;namespace ExpertLib.ChinaSpecial{ #region ChineseCalendarException /// /// 中国日历异常处理 /// public class ChineseCalendarException : System.Exception { public Chines原创 2006-12-13 03:20:00 · 7200 阅读 · 15 评论 -
一种简便定义javascript命名空间的方法
这种方法需要引用jQuery的$.extend方法,因此先需要引用jQuery,版本无所谓,你可以将这个方法写在公用模块内源码: //ns 可以是一个字符串,也可是指定的对象//如果是第一次定义,必需是一个用.分隔的字符串,这个函数会创建对应的空间function DEF_NAME_SPACE(ns,op){ switch(typeof ns){ case原创 2012-08-26 00:29:45 · 2022 阅读 · 0 评论