C#(其它)
文章平均质量分 81
guolei0451
这个作者很懒,什么都没留下…
展开
-
如何动态调用DLL中类的方法以及属性
转自:愚翁如何动态调用DLL中类的方法以及属性在C#中可以通过Assembly来动态加载DLL,然后由它创建类型,接着通过类型的InvokeMember方法来调用DLL中类的方法以及属性。 为了方便说明一下的方法,先说明一下DLL的代码,大致如下:using System;namespace clsTestDll{ /// /// Summar转载 2006-10-05 10:45:00 · 629 阅读 · 0 评论 -
C#中Ref和Out传参的区别
function StorePage(){d=document;t=d.selection?(d.selection.type!=None?d.selection.createRange().text:):(d.getSelection?d.getSelection():);void(keyit=window.open(http://www.365key.com/storeit.as转载 2006-10-07 09:49:00 · 851 阅读 · 1 评论 -
获取汉字的拼音首字母
private void button1_Click(object sender, System.EventArgs e) { UtilIndexCode(textBox1.Text.ToString());//textBox1中输入汉字,如果输入"中国你好"会获取ZGNH } /// /// 返回字符串的首写字母字符串 /// /// 需得到首写字母的字符串 /// p转载 2006-10-12 09:36:00 · 743 阅读 · 0 评论 -
用C#快速往Excel写数据 (FROM 阿宝的专栏)
添加 引用-COM-Micosoft EXCEL 11.0 Object Libraryusing Excel;using System.Reflection; Excel.Application app = new Excel.ApplicationClass(); if( app == null) { MessageBox.Show("Excel无法启动");转载 2006-10-07 15:29:00 · 941 阅读 · 0 评论 -
C#的事件与托管(代码理解)
using System;namespace MyCollections{using System.Collections;public delegate void ChangedEventHandler(object sender, EventArgs e);public class ListWithChangedEvent : ArrayList{/*转载 2006-11-08 13:44:00 · 1502 阅读 · 0 评论 -
区分接口实现与虚函数重载
众所周知,在一个类中对接口所定义方法的实现,默认是不会加上“virtual”关键字的。一般的形式如下。 interface IMsg { void Message(); } public class MyClass:IMsg { #region IMsg Members public void Message()转载 2006-11-08 13:21:00 · 1012 阅读 · 1 评论 -
如何用C#做一个悬浮窗口程序
function StorePage(){d=document;t=d.selection?(d.selection.type!=None?d.selection.createRange().text:):(d.getSelection?d.getSelection():);void(keyit=window.open(http://www.365key.com/storeit.as转载 2006-10-05 09:41:00 · 1708 阅读 · 2 评论 -
使用Conditional属性来代替IF/ENDIF程序块
转自:愚翁在编码的时候,有时候需要添加一些DEBUG信息,来为了方便调试程序,但是到了真正发布的时候,又不希望把这些信息进行编译发布。那么在以前C或者C++编码的时候,用IF/ENDIF来定义程序块实现这个功能,而此方法在C#中可以继续沿用。 这种用IF/ENDIF来增加DEBUG信息块有两种方式,如下:方式一,在一个函数中进行嵌入,例如:#if DEBUG转载 2006-09-28 15:07:00 · 587 阅读 · 0 评论 -
循环窗体上的TEXTBOX
private void button1_Click(object sender, System.EventArgs e) { OperateControls(this); } public void OperateControls(Control c) { if(c.Controls!=null) { foreach(Control txt in c.Control原创 2006-09-14 16:52:00 · 590 阅读 · 0 评论 -
提倡使用foreach语句来进行循环操作
转自:愚翁循环语句是编程的基本语句,在C#中除了沿用C语言的循环语句外,还提供了foreach语句来实现循环。那么我要说的就是,在循环操作中尽量使用foreach语句来实现。 为了来更好地说明为什么要提倡使用foreach,用如下三种不同方式来编写循环语句。 int[] nArray = new int[100]; // Use "fore转载 2006-09-28 15:14:00 · 596 阅读 · 0 评论 -
区别和认识四个判等函数
转自:愚翁 http://www.lijianzhong.com/Samples%5Cch06.pdf(李建忠BLOG).Net有四个判等函数?不少人看到这个标题,会对此感到怀疑。事实上确是如此,.Net提供了ReferenceEquals、静态Equals,具体类型的Equals以及==操作符这四个判等函数。但是这四个函数之间有细微的关系,改变其中一个函数的实现会影响到其他函数的操作转载 2006-09-28 15:15:00 · 587 阅读 · 0 评论 -
数据结构——队列、堆栈和哈希表
考察数据结构——第二部分:队列、堆栈和哈希表[译]本文是"考察数据结构"系列文章的第二部分,考察了三种研究得最多的数据结构:队列(Queue),堆栈(Stack)和哈希表(Hashtable)。正如我们所知,Quenu和Stack其实一种特殊的ArrayList,提供大量不同类型的数据对象的存储,只不过访问这些元素的顺序受到了限制。Hashtable则提供了一种类数组(array-like)的转载 2006-09-29 10:35:00 · 1855 阅读 · 2 评论 -
区分值类型和引用类型
转自:愚翁在C#中有两种类型的数据,一种是值类型数据,一种是引用类型数据。在编码的时候区分这两种类型数据,可以避免一些细小的编码错误。 首先说说什么类型是值类型,例如:int、float、bool之类的基础类型,以及用struct定义的类型,如:DateTime。除此外,如string,数组,以及用class定义的类型等都是引用类型。对于C#来说,很难罗列出所有类型进行一一分别,这转载 2006-09-28 15:10:00 · 595 阅读 · 0 评论 -
使用as和is操作符来做类型转换
转自:愚翁 程序中,进行类型转换是常见的事。那么在C#中支持以前语言的类型转换方法,即用类型名进行强行转换,例如:object objTest = new NewType();NewType newValue = (NewType)objTest; 但是这样转换,有个严重的问题,就是在把objTest强转换成NewType类型对象的时候,这个过程是不安全的,因此需要用try-c转载 2006-09-28 15:05:00 · 545 阅读 · 0 评论 -
C#的四个基本技巧
1.如果可能尽量使用接口来编程 .NET框架包括类和接口,在编写程序的时候,你可能知道正在用.NET的哪个类。然而,在这种情况下如果你用.NET支持的接口而不是它的类来编程时,代码会变得更加稳定、可用性会更高。请分析下面的代码: private void LoadList (object [] items, ListBox l) { for (int i = 0; i l.Ite转载 2007-01-18 10:26:00 · 1018 阅读 · 0 评论