我有一个应用程序与24个不同的窗体。他们有一些安全选项,基于这些选项,5个不同的按钮提交,批准,第二批准,第三批准,拒绝等获取启用禁用。访问动态控件内的属性给出空引用异常
现在我设计了一个MainForm,其中包含所有按钮和安全代码。我已经创建了每个表单作为一个用户控件,并根据用户想要的形式动态加载它们。我的加载工作非常好。我加载控件并将其添加到主页面的页面加载事件中的占位符。
现在当用户选择提交按钮时,我想调用窗体的usercontrol内的Save方法,因为每个窗体都会有一个单独的Save。所以当我尝试这段代码片段时,我得到了Null引用错误。请让我知道如何解决它。
Private UCDynamic As UserControl
然后在页面加载事件中,我使用此代码
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If not Me.IsPostBack
UCDynamic = LoadControl("Controls/BkCode.ascx")
Me.PlaceHolderForm.Controls.Add(UCDynamic)
End if
然后在ButtonClick事件的提交我做这个
Protected Sub Save_OnClick(ByVal sender As Object, ByVal e As EventArgs)
Save()
End Sub
Sub Save()
CType(Me.UCDynamic, controls_BkCode).Save()
End Sub
那是从哪里获得的投空引用错误。因此,在发布后控件不再存在于页面上。任何想法将不胜感激。
谢谢。