如何正確實現(xiàn)VB.NET重載Windows控件
VB.NET編程語言的作用在開發(fā)人員眼中看來是非常重要的。我們在這里就會為大家介紹一下VB.NET重載Windows控件的相關(guān)方法,希望可以幫助大家提高對VB.NET的理解程度,提高編程效率。#t#
在VB.NET中,用戶可以根據(jù)一個已經(jīng)存在的控件繼承出一個新的Windows控件來實現(xiàn)VB.NET重載Windows控件,假設(shè)現(xiàn)在需要一種Text控件,當用tab鍵移到該控件時,整個Text中的內(nèi)容都被highlight了,在VB 6.0中,這可以通過編寫一個新的Dll動態(tài)庫,但是Textbox控件在工具箱中被屏蔽掉了,并且失去了Textbox的一些有用的事件。而在vb 7.0中則可以通過繼承Textbox類而派生出一個新的類。
下面舉一個例子,通過Windows設(shè)計環(huán)境,建立一個窗體,在這個窗體中有兩個Textbox,通過在"Project|Add User Control"菜單給工程加入一個名為"HitextBox.vb"的對象,使這個控件繼承TextBox的屬性,而不是要自定義一個全新的控件,如下:
- Public class HtextBox
- Inherits Textbox
下面先編譯一下整個VB.NET重載Windows控件的工程,新加入的HtextBox控件將會出現(xiàn)在左邊的工具欄的底部。用戶可以在建立的任何一個Windows窗體中建立一個HtextBox類對象。在類的代碼中,插入如下代碼以實現(xiàn)highlight的功能:當你用Tab鍵移到Textbox時,Textbox的全部內(nèi)容變?yōu)閔ightlight。
- Public class HttextBox
- Inherits Textbox
- Public Sub New
- Mybase.New
- 'Add Event event handler
- AddHandler Enter,_
- New System.EventHandler(AddressOf_
- Me.Ht_Enter)
- End Sub
- 'Enter event handler is
inside the class- Protected Sub Ht_Enter(Byval
sender as Object,_- Byval e as System.EventArgs)
- Me.selectionStart=0
- MeMe.selectionLength=Me.text.length
- End Sub
- End Class
這就是所有的VB.NET重載Windows控件過程,通過添加大概10行代碼就做出了一個繼承Windows控件派生出來的控件。