2009年8月12日
    
 
        
        
摘要:        
一些初学者常常会对Console.Read()方法产生一些误解!具体是什么误解呢?我们先看一段代码: static void Main(string[] args){  int i1 = 123;  Console.WriteLine(d1);  Console.Read();  int i2 = 456;  Console.WriteLine(_i2);  Console.Read(); //这...    
阅读全文
 
        
            posted @ 2009-08-12 22:22
周雪峰
阅读(674)
推荐(2)
        
 
		
    
        
            
        
         
        2009年7月24日
    
 
        
        
摘要:        
有时我们可以需要拼接数组,下面介绍拼接数组的几种方法:1,使用数组的CopyTo方法:int[] array1 = new int[2];int[] array2 = new int[5];int[] result = new int[array1.Length + array2.Length];array1.CopyTo(result, 0);array2.CopyTo(result, arra...    
阅读全文
 
        
            posted @ 2009-07-24 17:16
周雪峰
阅读(4564)
推荐(0)
        
 
		
    
        
            
        
         
        2009年7月17日
    
 
        
        
摘要:        
大家可能经常会遇到在窗体间传递某些数据的功能要求,这里介绍给大家一种方法:在子窗体中自定义一个构造函数,参数类型是主窗体,当要显示子窗体的时候,就用这个构造函数来实例化子窗体,然后把this指针传进去,说起来太抽象了,我大概一写大家应该就明白了: public class frmMain:Form { ... frmControl controlForm=new frmControl(this);...    
阅读全文
 
        
            posted @ 2009-07-17 13:06
周雪峰
阅读(410)
推荐(0)
        
 
		
    
        
            
        
         
        2009年7月13日
    
 
        
        
摘要:        
.NET提供了三种记时器:  1,System.Timers.Timer:  这个Timer是使用线程池中的线程去执行任务的,,既然是使用线程池里的线程,就必须在访问任务用到的资源的时候,对线程进行同步!,可以指定某个线程去执行任务, 2,System.Threading.Timer:  和1中的Timer类似也是使用线程池中的线程去执行任务的,但是不可以指定的某个线程去执行任务 3,System...    
阅读全文
 
        
            posted @ 2009-07-13 08:44
周雪峰
阅读(368)
推荐(1)
        
 
		
    
        
            
        
         
        2009年6月20日
    
 
        
        
摘要:        
大家先来看看如下三个循环: int[] foo = new int[100]; 1, foreach (int i in foo) Console.WriteLine(i.ToString()); 2,for(int index=0;index<foo.Length;index++) Console.WriteLine(foo[index].ToString()); 3,int len=fo...    
阅读全文
 
        
            posted @ 2009-06-20 15:19
周雪峰
阅读(3079)
推荐(2)
        
 
		
    
        
            
        
         
        2009年6月19日
    
 
        
        
摘要:        
这个DefaultValueAttributte特性时常令大家比较疑惑,特别是看了MSDN文档中关于这个类的说明,大家可能就更加的疑惑了,文档中关于DefaultValueAttribute特性的说明如下:指定属性 (Property) 的默认值。 所以大家可能都以为通过应用这个特性就会设置属性的默认值,于是大家可能编写了类似的代码: public class Child { private in...    
阅读全文
 
        
            posted @ 2009-06-19 17:00
周雪峰
阅读(327)
推荐(0)
        
 
		
    
        
            
        
         
        2009年6月17日
    
 
        
        
摘要:        
如果想在类中定义某些常量字段,一般有两种选择,可以定义成const,也可以定义成readonly,这两种方式如何取舍呢?在绝大多数情况下,readonly是要优于const的,因为readonly可以带来更大的灵活性!一般我们可以认为const是编译时常量,也就是说你引用const字段,在编译的时候就被替换成相应的常量值了!例如:public class MyClass{ public const...    
阅读全文
 
        
            posted @ 2009-06-17 18:44
周雪峰
阅读(382)
推荐(0)
        
 
		
    
        
            
        
         
        2009年6月15日
    
 
        
        
摘要:        
一般在C#中,想“暴露”类中的某些数据给用户可以使用两种方式来实现,一种是使用公有字段,另外一种是使用属性来实现,下面我列举一些代码来比较这两种实现:1,使用公有字段:public class Student{  public string Name;} 2,使用属性: public class Student { private string _name; public ...    
阅读全文
 
        
            posted @ 2009-06-15 15:08
周雪峰
阅读(493)
推荐(0)
        
 
		
    
        
            
        
         
        2009年5月26日
    
 
        
        
摘要:        
在一个控件中使Tab键作为一般的输入键来触发KeyDown,KeyUp事件,需要自定义一个新控件 ,然后重写IsInputKey 方法 using System;using System.Windows.Forms;public class MyTextBox :System.Windows.Forms.TextBox{	// Override IsInputKey method to ident...    
阅读全文
 
        
            posted @ 2009-05-26 10:27
周雪峰
阅读(452)
推荐(0)
        
            
        
        
摘要:        
今天在论坛了看到了一个问题,所以仔细研究了一下,这个问题是关于Tab键和KeyDown,KeyUp事件!比如有一个TextBox控件,在有焦点的情况下按下Tab,是不会触发KeyDown事件的,而是直接移走输入焦点!也就是说这样是不能捕获Tab键的:private void textBox1_KeyDown(object sender, KeyEventArgs e) { e.Handled = ...    
阅读全文
 
        
            posted @ 2009-05-26 10:22
周雪峰
阅读(1874)
推荐(0)