我写了个自定义控件,但为什么运行时提示 "System.NullReferenceException: 未将对象引用设置到对象的实例"Public Class chkbox
Inherits System.Web.UI.UserControl
Private _chk As String = "0"
#Region " Web 窗体设计器生成的代码 " '该调用是 Web 窗体设计器所必需的。
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent() End Sub
Protected WithEvents CheckBox1 As System.Web.UI.WebControls.CheckBox '注意: 以下占位符声明是 Web 窗体设计器所必需的。
'不要删除或移动它。
Private designerPlaceholderDeclaration As System.Object Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
'CODEGEN: 此方法调用是 Web 窗体设计器所必需的
'不要使用代码编辑器修改它。
InitializeComponent()
End Sub#End Region Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'在此处放置初始化页的用户代码
End Sub
Public Property chk() As String
Get
If CheckBox1.Checked = True Then
_chk = 1
Else
_chk = 0
End If
Return _chk
End Get
Set(ByVal Value As String)
_chk = Value
End Set
End Property
End Class
Inherits System.Web.UI.UserControl
Private _chk As String = "0"
#Region " Web 窗体设计器生成的代码 " '该调用是 Web 窗体设计器所必需的。
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent() End Sub
Protected WithEvents CheckBox1 As System.Web.UI.WebControls.CheckBox '注意: 以下占位符声明是 Web 窗体设计器所必需的。
'不要删除或移动它。
Private designerPlaceholderDeclaration As System.Object Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
'CODEGEN: 此方法调用是 Web 窗体设计器所必需的
'不要使用代码编辑器修改它。
InitializeComponent()
End Sub#End Region Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'在此处放置初始化页的用户代码
End Sub
Public Property chk() As String
Get
If CheckBox1.Checked = True Then
_chk = 1
Else
_chk = 0
End If
Return _chk
End Get
Set(ByVal Value As String)
_chk = Value
End Set
End Property
End Class
<%@ Register TagPrefix="IBuySpy" TagName="chkbox" Src="chkbox.ascx" %>
<IBUYSPY:chkbox id="chkbox" runat="server"></IBUYSPY:chkbox>
并且在#Region " Web 窗体设计器生成的代码 "
中也放上了Protected WithEvents chkbox As New chkbox