06 2010 档案

摘要:在做项目时,涉及到用户自定义报表,即用户可以根据自己的喜好,选择报表中需要显示的列,并可以对这些列重新命名/排序等.这些功能由报表设计器来完成. 最初设想的是使用ListBox的SelectedIn... 阅读全文
posted @ 2010-06-23 18:00 Ritchie(乞戈) 阅读(2795) 评论(0) 推荐(0) 编辑
摘要:先看下面的代码: 编译时可以通过,但运行时却报如下错误:System.InvalidCastException: 指定的转换无效。这是因为,当对一个对象进行拆箱时,转型的结果必须是它原来未装箱的类型。... 阅读全文
posted @ 2010-06-17 13:03 Ritchie(乞戈) 阅读(282) 评论(0) 推荐(0) 编辑
摘要:C#中,当使用常数符号const时,编译器首先从定义常数的模块的元数据中找出该符号,并直接取出常数的值,然后将之嵌入到编译后产生的IL代码中,所以常数在运行时不需要分配任何内存,当然也就无法获取常数的地址,也无法使用引用了。 如下代码: 将其编译成ConstTest.dll文件,并在如下代码中引用此ConstTest.dll文件。 编译运行此Main.exe程序,结果输出为1000。之后将bin... 阅读全文
posted @ 2010-06-17 13:00 Ritchie(乞戈) 阅读(2243) 评论(1) 推荐(1) 编辑
摘要:CLR最重要的一个特性就是类型安全。CLR在运行时总能知道一个对象的类型。我们也可以通过调用GetType()方法,来得到对象的准确类型。因为该方法是一个非虚方法,所以我们不可能利用它来篡改一个类型的信息。(Microsoft.NET 框架程序设计<修订版>p117) 我们定义如下类: 通过如下代码: 我们得到的输出为: 通过以上,应该可以明白“CLR在运行时总能知道一个... 阅读全文
posted @ 2010-06-17 12:53 Ritchie(乞戈) 阅读(258) 评论(0) 推荐(0) 编辑