Imports System.Web
Imports System.Web.UI
Imports Microsoft.VisualBasic
Imports System.Web.UI.WebControls
Imports System.ComponentModel
Imports System.Drawing.Design.UITypeEditorNamespace zJYLControl
Public NotInheritable Class SY
Inherits WebControl
Implements INamingContainer
Dim MyButton As New Button
Public Event PageIndexChangedForBottom(ByRef sender As Button, ByRef e As MySelfUserControl) Protected Overrides Sub CreateChildControls()
MyButton.Text = "试验一下"
MyButton.Width = Unit.Pixel(144)
MyButton.Height = Unit.Pixel(24)
Me.Controls.Add(MyButton)
AddHandler MyButton.Click, AddressOf Me.IndexChangedForBottom
End Sub Public Sub IndexChangedForBottom(ByVal sender As [Object], ByVal e As EventArgs)
RaiseEvent PageIndexChangedForBottom(MyButton, e)
End Sub
End Class Public Class MySelfUserControl
Inherits System.EventArgs
End Class
End Namespace问题出在哪里?在程序调用该控件点击按钮,显示转换失败....
Imports System.Web.UI
Imports Microsoft.VisualBasic
Imports System.Web.UI.WebControls
Imports System.ComponentModel
Imports System.Drawing.Design.UITypeEditorNamespace zJYLControl
Public NotInheritable Class SY
Inherits WebControl
Implements INamingContainer
Dim MyButton As New Button
Public Event PageIndexChangedForBottom(ByRef sender As Button, ByRef e As MySelfUserControl) Protected Overrides Sub CreateChildControls()
MyButton.Text = "试验一下"
MyButton.Width = Unit.Pixel(144)
MyButton.Height = Unit.Pixel(24)
Me.Controls.Add(MyButton)
AddHandler MyButton.Click, AddressOf Me.IndexChangedForBottom
End Sub Public Sub IndexChangedForBottom(ByVal sender As [Object], ByVal e As EventArgs)
RaiseEvent PageIndexChangedForBottom(MyButton, e)
End Sub
End Class Public Class MySelfUserControl
Inherits System.EventArgs
End Class
End Namespace问题出在哪里?在程序调用该控件点击按钮,显示转换失败....
Imports System.Web.UI
Imports System.Web.UI.WebControls<DefaultProperty("Text"), ToolboxData("<{0}:test runat=server></{0}:test>")> Public Class test
Inherits System.Web.UI.WebControls.WebControl
Implements INamingContainer
Private WithEvents MyButton As Button Public Event PageIndexChangedForBottom As EventHandler <NotifyParentProperty(True), PersistenceMode(PersistenceMode.InnerProperty), _
Category("ChildControl"), Description("Button")> _
Public ReadOnly Property SubButton() As Button
Get
Me.EnsureChildControls()
Return MyButton
End Get
End Property Protected Overrides Sub AddParsedSubObject(ByVal obj As Object)
If TypeOf (obj) Is Button Then
Me.MyButton = obj
End If
End Sub Protected Overrides Sub CreateChildControls()
If MyButton Is Nothing Then
MyButton = New Button
MyButton.Text = "试验一下"
MyButton.Width = Unit.Pixel(144)
MyButton.Height = Unit.Pixel(24)
End If
MyBase.Controls.Add(MyButton)
End Sub Private Sub MyButton_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyButton.Click
RaiseEvent PageIndexChangedForBottom(sender, e)
End Sub
End Class
Private Sub MyButton_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyButton.Click
RaiseBubbleEvent(sender, e)
End Sub