文件名称:在控件中嵌入其他控件-sx127x中文数据手册cn
文件大小:57.77MB
文件格式:PDF
更新时间:2024-07-29 11:56:44
VisualBasic 2010 .NET4 高级编程 (第6版)
15.8 在控件中嵌入其他控件 创建定制控件时需要用到的另一个重要技术是嵌入其他控件。从某种意义上来说, UserControl 就是这么做的。但是在使用 UserControJ 作为基类时,子类只会获得 UserControl 类的属性。有时, 我们可能希望使用 Textbox 或者Grid 控件作为起点,然后在这些控件中嵌入一个Buttoo 控件以实现 某些新的功能。 这种嵌入技术基于以下事实一一在Wmdows 窗体中,所有的控件都可以用作其他控件的容器. VB开发人员都知道, Panels和 GroupBoxes 可以用作容器,但事实上 TextBox 或者Grid 控件也可以 作为其他控件的容器。 下面通过一个例子来说明这种技术。标准的 CornboBox控件并没有给用户提供把该控件重置为 tt=万在中"状态的功能。如果某个条目被选中,要把它设置为"无选中"状态,就必须在代码中把 SelectedJndex 设置为-1. 这个例子将创建一个基于 ComboBox 的控件,它包含了把选择状态重置为"无选中"的按钮。 这样,用户就可 以直接使用该功能了。前面我们已经通过例子学习了控件的创建,因此下面不会一 步一步创建程序,而只是列出这种 ComboBox 的代码,然后讨论该代码的功能: J ñ1从 wrox .t.Om 下就M代码 public Class SpecialComboBox Inherits ComboBox Dim WithEvents btnEmbeddedButton As Button 趴Jblic Sub New () 悦色 .D.ro'PD。如fiStyle = COMOoBo注Style . DropDownList I Fíx 口p the embedded button. btnEmbeddedButton = New Button btnEmbeddedButton.Width .~ SystemInformation .VerticalScrol1BarWíd主h btnEr可meddedButton . Top = 0 btnErnbeddedButton . Height = Me.Height - 4 btnErnbeddedButton.BackColor = SystemColors .Control btnEmbeddedButton.FlatStyle = FlatStyle.Popup btnEmbeddedButton.Text = " 1:" Dim 王Specíal As New Font( "Wingdings 3 " , Me .Fon t.Size - 1) btnEmbeddedButton.Font = fSpecíal btnEmbeddedButton . Left = Me.Width - btnEmbeddedButton.Width - Systemlnformation .VerticalScrollBarWidth M.e . Contróls . Add (btñEmbéddedButton) btnEmbeddedButton.Anchor = CType(AnchorStyles. .Rlght _ Or AnchorStyles.Top Or Anc horStyles . Bottom, AnchorStylesl 601