七個C 程式設計的小技巧

2022-10-11 17:09:15 字數 1959 閱讀 3799

一、最小化視窗

點選「x」或「alt f4」時,最小化視窗,

如:protected override void wndproc(ref message m)

base.wndproc(ref m);

}在編譯的時候,c#編輯器會對每乙個foreach 區域進行轉換。ienumerator enumerator = array.getenumerator();

try

}finally

這說明在後台,foreach的管理會給你的程式帶來一些增加系統開銷的額外**。

三、將儲存到乙個xml檔案

winform的資源檔案中,將picturebox的image屬性等非文字內容都轉變成文字儲存,這是通過序列化(serialization)實現的,

例子://

using system.runtime.serialization.formatters.soap;

stream stream = new filestream("e:\\image.xml",filemode.create,fileaccess.write,fileshare.none);

soapformatter f = new soapformatter();

image img = image.fromfile("e:\\image.bmp");

f.serialize(stream,img);

stream.close();

四、遮蔽ctrl-v

在winform中的textbox控制項沒有辦法遮蔽ctrl-v的剪貼簿貼上動作,如果需要乙個輸入框,但是不希望使用者貼上剪貼簿的內容,可以改用richtextbox控制項,並且在keydown中遮蔽掉ctrl-v鍵,例子:

private void richtextbox1_keydown(object sender, system.windows.forms.keyeventargs e)

五、判斷檔案或資料夾是否存在

使用system.io.file,要檢查乙個檔案是否存在非常簡單:

bool exist = system.io.file.exists(filename);

如果需要判斷目錄(資料夾)是否存在,可以使用system.io.directory:

bool exist = system.io.directory.exists(foldername);

六、使用delegate型別設計自定義事件

在c#程式設計中,除了method和property,任何class都可以有自己的事件(event)。定義和使用自定義事件的步驟如下:

(1)在class之外定義乙個delegate型別,用於確定事件程式的介面

(2)在class內部,宣告乙個public event變數,型別為上一步驟定義的delegate型別

(3)在某個method或者property內部某處,觸發事件

(4)client程式中使用 =操作符指定事件處理程式

例子: // 定義delegate型別,約束事件程式的引數

public delegate void myeventhandler(object sender, long linenumber) ;

public class dataimports

//...

}//...

}// 以下為client**

private void callmethod()

// 事件處理程式

private void da_enternewline(object sender, long linenumber)

七、ip與主機名解析

使用system.net可以實現與ping命令列類似的ip解析功能,例如將主機名解析為ip或者反過來: private string gethostnamebyip(string ipaddress)

private string getipbyhostname(string hostname)

七個C 程式設計小技巧

一 最小化視窗 點選 x 或 alt f4 時,最小化視窗,如 protected override void wndproc ref message m base.wndproc ref m 二 如何讓foreach 迴圈執行的更快 foreach是乙個對集合中的元素進行簡單的列舉及處理的現成語句...

七個C 程式設計的小技巧

呼叫class方法,途中會觸發事件 da.importdata 事件處理程式 private void da enternewline object sender,long linenumber 七 ip與主機名解析 使用system.net可以實現與ping命令列類似的ip解析功能,例如將主機名解...

七個Git技巧

1.git的自動更正 我們有時都會打錯字,但如果啟用了 git 的自動更正功能,就可以讓 git 自動修正打錯的子命令。假設你想用git status檢查狀態,卻不小心輸入了git stats。正常情況下,git 會告訴你stats不是一條有效的命令 1 git stats 2 git stats ...