MSDN文件庫閱讀入門 (1)

Microsoft .Net Framework事實上算是個非常龐大的架構,大概只有極少數的人有辦法把所有東西記在腦海中,所以在寫程式的過程中難免會需要閱讀文件。對於一個撰寫.Net 程式的人而言, MSDN Library( MSDN 文件庫 )其實是一個非常具有實用性的工具。我們不僅可以使用網際網路查詢MSDN 文件庫的內容,也可將其下載於電腦中以便於在無法上網的狀態下能夠在本機閱讀它。

...繼續閱讀 »

在類別庫專案中將列舉型別定義在命名空間

七月是個令人歡欣鼓舞的月份,許多朋友這幾天都接到微軟通知獲選或是連任MVP的通知,雖然在噗浪已經狂賀一輪了,在這邊還是要恭喜他們,很開心他們的努力有獲得微軟的認可。言歸正傳,因為這幾天在改以前寫的類別庫,突然讓我想起為何 .Net中的列舉都是在命名空間﹝Namespace﹞中,而我的都寫在類別裡面;是不是自訂類別庫不能將列舉放在命名空間中呢?

...繼續閱讀 »

發問的藝術與技術

這幾個月以來到各論壇逛來逛去幾乎已經快變成一種生活習慣,每天看著許多的人在各論檀發問,另外也有許多的人熱心的在論壇上回答問題,有個感想是發問其實也是件要學習的事情。有人或許會覺得這像抱怨文,如果看倌您看了覺得不舒服,在下我也只能跟您說聲抱歉。

...繼續閱讀 »

多執行緒初探--使用BackgroundWorker(1)

.Net Framework在多執行緒的支援上提供了許多方便的類別,而BackgroundWorker則是一項非常容易用來撰寫多執行緒的類別, 它不僅和System.Windows.Forms.Timer一樣也在工具箱提供了可拖曳使用的元件,並且提供了ProgressChanged事件使得更動主畫面控制項可以不需藉由Control.Invoke﹝有些時候Invoke的概念對初學者會有或多或少邏輯上的困擾﹞,個人覺得這個元件滿適合初學者當做撰寫多執行緒的入門。

...繼續閱讀 »

自製簡易排程器(2)

這一次來講比較進階型的排程器作法,主要想達到以下幾個目的:
1.能夠以類別的型式存在,方便改裝成類別庫的型式提供其它的應用程式引用。
2.不需要每秒﹝或每分鐘﹞不斷地去檢查是否已經抵達指定的時間,而是在指定時間到達時刻去執行必要程序即可。
3.可以將要執行的程序以CallBack方式傳入執行個體中。
4.當系統時間被改變的時候,依然能夠準確的在指定抵達時間執行程序。

...繼續閱讀 »

自製簡易排程器(1)

有些時候我們在程式中會用到排程器的功能,說起來排程器其實就是在應用Timer的功能,我知道網路上其實有滿多這種現成的排程器類別可用,不過個人覺得自己動手寫來的有趣點。

...繼續閱讀 »

三種時間人《.NET中的Timer(3)》

第三種Timer就是System.Threading.Timer﹝以下簡稱為Threading.Timer﹞,和前兩個Timer不同的是,Threading.Timer是使用回呼﹝Callback﹞方式而非使用事件﹝Event﹞來執行其工作,在MSDN文件庫中的System.Threading命名空間中的[Timer 成員]可以看到這個類別是不具備事件的。

...繼續閱讀 »

三種時間人《.NET中的Timer(1)》

Timer在.Net中也是個挺有趣的族群,在.Net Framework中有三種不一樣的Timer,分別是Windows.Forms.Timer、System.Timers.Timer、System.Threading.Timer。這三個時間人在某些地方有點相同,也有許多地方大異其趣,所以我一直覺得他們是很有意思的。

...繼續閱讀 »

DataGridView Rows Copy

這一篇談一個小小的技巧,最近也常在MSDN看過類似的問題,許多同好都會提出如何把一個DataGridView的Row複製到另一個DataGridView,所以就想寫一個小小的範例讓需要的人參考。

...繼續閱讀 »