Imports System.ComponentModel
Imports System.Web.UI
Namespace WebControls
1<defaultproperty("text"), customtoolbar="" runat="server" toolboxdata("<{0}:=""><!--{0}:CustomToolBar-->")> Public Class CustomToolBar
2
3Inherits System.Web.UI.WebControls.WebControl
4
5'定义3按钮
6
7Public WithEvents btnAdd As System.Web.UI.WebControls.Button
8
9Public WithEvents btnDelete As System.Web.UI.WebControls.Button
10
11Public WithEvents btnEdit As System.Web.UI.WebControls.Button
12
13Private Sub Button_Ini( ByRef objButton As Button, ByVal Text As String )
14
15objButton = New System.Web.UI.WebControls.Button
16
17objButton.Text = Text
18
19Me .Controls.Add(objButton)
20
21End Sub
22
23Public Sub New ()
24
25Button_Ini(btnAddNew, "新增")
26
27Button_Ini(btnDeleteData, "删除")
28
29End Sub
30
31End Class
32
33End Namespace
34
35/////////////////////////////////////
36
37为了简明,没在控件里加什么事件、方法、属性之类的。把它编译成 dll
38
39调用方法:
40
41新建一页面 test.aspx,把控件添加进去。控件Id为CustomToolBar。在test.aspx.vb里的 Page_Init过程里添加:
42
43Public Class frmFabricItem
44
45Inherits System.Web.UI.Page
46
47Protected DbaControls As AMMS.DbaControls
48
49# Region " Web 窗体设计器生成的代码 "
50
51'该调用是 Web 窗体设计器所必需的。
52
53<system.diagnostics.debuggerstepthrough()> Private Sub InitializeComponent()
54
55End Sub
56
57Private Sub Page_Init( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase .Init
58
59'CODEGEN: 此方法调用是 Web 窗体设计器所必需的
60
61'不要使用代码编辑器修改它。
62
63InitializeComponent()
64
65AddHandler CustomToolBar. btnAdd.Click, AddressOf Me .btnAdd_Click
66
67AddHandler CustomToolBar. btnDelete.Click, AddressOf Me .btnDelete_Click
68
69AddHandler CustomToolBar . btnEdit . Click , AddressOf Me. btnEdit_Click
70
71End Sub
72
73# End Region
74
75Private Sub Page_Load( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase .Load
76
77'在此处放置初始化页的用户代码
78
79End Sub
80
81'定义btnAdd_Click过程
82
83Private Sub btnAdd_Click( ByVal sender As System.Object, ByVal e As System.EventArgs)
84
85…… ..
86
87End Sub
88
89'定义btnDelete_Click过程
90
91Private Sub btnDelete_Click( ByVal sender As System.Object, ByVal e As System.EventArgs)
92
93…… ..
94
95End Sub
96
97'定义btnAdd _Click过程
98
99Private Sub btnEdit_Click( ByVal sender As System.Object, ByVal e As System.EventArgs)
100
101…… ..
102
103End Sub
104
105End Class
106
107/////////////////////////////////
108
109其中关键是: AddHandler 语句。 还有要放在 Page_Init过程里。
110
111附:
112
113AddHandler 语句
114
115请参见
116
117_ RemoveHandler 语句 _ | _ Handles _ | 事件和事件处理程序 | AddHandler 和 RemoveHandler
118
119将事件与事件处理程序相关联。
120
121** AddHandler ** __ event _ _ , **AddressOf** __ eventhandler _ _
122
123各部分说明
124
125_ event _
126
127要处理的事件的名称。
128
129_ eventhandler _
130
131将处理事件的过程的名称。
132
133备注
134
135** AddHandler ** 和 ** RemoveHandler ** 语句使您可以在程序执行过程中的任何时候启动和停止事件处理。</system.diagnostics.debuggerstepthrough()></defaultproperty("text"),>