vb.net自定义组件 vb自定义控件

VB.NET自定义控件的问题

1.

10年积累的网站制作、成都做网站经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站设计后付款的网站建设流程,更有大冶免费网站建设让你可以放心的选择与我们合作。

web.config里注册,类似下面

system.web

pages

controls

add tagPrefix="scottgu" src="~/Controls/Header.ascx" tagName="header"/

add tagPrefix="scottgu" src="~/Controls/Footer.ascx" tagName="footer"/

/controls

/pages

/system.web

注意这里的路径一定不能错,否则显示不出来

2.

注册用户控件时使用绝对路径,而不是相对路径

VB.net2010自定义组件怎么出现在工具箱

重新生成,控件工具栏,会出现【解决方案名称】组件,如hb_test组件,里面有当前解决方案自定义的控件,如果没有,以下方法可以使控件在编辑状态出现在窗体上。

打开form1.designer。vb

在Partial Class Form1类中的最后添加:

Friend WithEvents MergeColumn1 As WindowsApplication1.MergeColumn’定义控件的全局变量

找到public sub InitializeComponent过程,在里面添加:

Me.MergeColumn1 = New WindowsApplication1.Datavip()‘初始化。

Me.MergeColumn1.Location = New System.Drawing.Point(0, 0)‘控件在窗体中的位置。

Me.daMergeColumn1ame = "daMergeColumn1"’控件名

Me.MergeColumn1.Size = New System.Drawing.Size(140, 150)‘必需,控件大小。

Me.MergeColumn1.TabIndex = 0’

Me.Controls.Add(Me.daMergeColumn1)‘必需,将控件添加到窗体。

vb.net自定义控件问题

首先,你已经完成的步骤是:

1.新建一个用户控件[注意,用户控件(UserControl)不是自定义控件(CustomControl)]

2.给用户控件起个名字(我在此处起名叫 RadioList)

3.在用户控件上画一个 GroupBox,命名为 RadioGroup,

并将其 Dock 属性设置为 Fill

然后,你需要做的是动态增减控件。

如果你以前用过 VB 6,你可能会想到控件数组,

但在此处,你可以直接增删控件。

具体实现如下:

4.在 GroupBox 里画一个 FlowLayoutPanel,命名为 RadioPanel,

将其 AutoScroll 属性设置为 True,即自动显示滚动条,

并设置其 FlowDirection 属性(例如设置为 TopDown)

这样就省去了手动调整 RadioButton 位置的麻烦

5.实现选项的动态增减(以下只是我的思路,你可以发挥一下)

(十分简洁,注释除外):

''' summary

''' 创建一个新的 RadioButton。

''' /summary

Private Function CreateRadio() As RadioButton

Dim NewRadio As New RadioButton

components.Add(NewRadio)

'components 字段由控件设计器自动创建,

'此代码目的是使控件在销毁(Dispose)时能自动销毁 RadioButton

'详情参见 RadioList.Designer.vb

NewRadio.Parent = RadioPanel

'设置容器

AddHandler NewRadio.CheckedChanged, AddressOf RadioButtons_CheckedChanged

'设置事件处理程序

Return NewRadio

End Function

''' summary

''' 移除已存在的 RadioButton。

''' /summary

Private Sub RemoveRadio(ByVal dest As RadioButton)

components.Remove(dest)

dest.Dispose()

End Sub

'无中生有的 RadioButton 的事件处理程序

Private Sub RadioButtons_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)

'在此处设置选中项的属性,通过 sender 来确定不同的 OptionButton

'你可以通过将 OptionButton 放在一个列表,

'如 List(Of OptionButton) 中来像数组一样维护选项的次序

'注意,此处需要判断 sender 的 Checked 属性是否为 True

'因为 Changed 是“改变”,而不是“选中”

'例如:

If DirectCast(sender, RadioButton).Checked Then

SelectedIndex = ...

End If

End Sub


分享标题:vb.net自定义组件 vb自定义控件
文章网址:http://hbruida.cn/article/doihgjc.html