講解VB.NET定製Windows控制元件

iDotNetSpace發表於2009-10-15

本文向大家介紹VB.NET定製Windows控制元件,可能好多人還不瞭解VB.NET定製Windows控制元件,沒有關係,看完本文你肯定有不少收穫,希望本文能教會你更多東西。

.NET是Microsoft公司提供解決未來計算需要的工具.在.NET Framework中提供了許多控制元件,可以解決程式設計中使用者介面的設計和實現,但在實際應用中可能需要對系統提供的控制元件進行改進,如.NET的選單不能帶圖形,下拉選單不能折行顯示。本文將介紹如何VB.NET定製Windows控制元件。

一 .NET中設計控制元件

.NET將控制元件放在UserControl物件上,可以自己程式設計繪製定製控制元件,也可以組合現有的控制元件形成複合控制元件或對現有控制元件進行改進。當選擇建立Windows Control Library時系統自動建立一個類,程式碼如下:

  1. Public Class UserControl  
  2. Inherits System.Windows.Forms.UserControl 

UserControl是控制元件名稱,需要時可以更改,UserControl是所有控制元件的父類,如果要對現有控制元件進行改進,可以用現有控制元件類名代替UserControl。

在該類中可以用屬性過程實現控制元件的屬性,用公用過程實現控制元件的方法,如果要自己程式設計繪製控制元件,程式碼應放在OnPaint方法中。對於自畫控制元件程式設計用下面兩個方法:MeasureItem和DrawItem,MeasureItem事件確定發生繪圖過程的矩形尺寸,DrawItem事件中進行繪製過程。該控制元件類編譯後生成DLL檔案。

二 設計帶圖形的選單

.NET中,MainMenu 控制元件表示窗體選單結構的容器。選單由表示選單結構中單個選單命令的MenuItem物件組成,每個MenuItem可以成為應用程式的命令或其他子選單項的父選單,要設計帶圖形的選單就要對MenuItem進行定製。下面是一個定製的MenuItem的類程式碼,在類中主要實現MeasureItem和DrawItem兩個事件:

  1. Public Class myMenuItem  
  2. Inherits System.Windows.Forms.MenuItem  
  3. Private m_picture As Image  
  4. #Region  
  5. …  
  6. #End Region  
  7. '下面程式碼實現Picture屬性  
  8. Public Property picture() As Image  
  9. Get  
  10. picture = m_picture 
  11. End Get  
  12. Set(ByVal Value As Image)  
  13. m_picture = Value 
  14. End Set  
  15. End Property 

以上介紹VB.NET定製Windows控制元件。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12639172/viewspace-616646/,如需轉載,請註明出處,否則將追究法律責任。

相關文章