引用:ASP.Net : How to call a Master page event handler from Content page event handler?
问题:SiteAssessment.btnNext_Click(sender, e)
无法访问,因为它受到保护,但我看不到??!!
好的,aspx.vb 的顶部是
Imports System.Data.SqlClient
Partial Class Assessment
Inherits System.Web.UI.Page
<%@ MasterType VirtualPath="~/SiteAssessment.master" %>
Public Sub btnNext_click(sender As Object, e As System.EventArgs)
SiteAssessment.btnNext_Click(sender, e)
End Sub
母版页 (SiteAssessment.master.vb)
Partial Class SiteAssessment
Inherits System.Web.UI.MasterPage
Public Sub btnNext_Click(sender As Object, e As EventArgs)
'Do Stuff Here
If Session.Item("questionbtn") Is Nothing Then
Session.Item("questionbtn") = 1
Else
Session.Item("questionbtn") = Session.Item("questionbtn").ToString + 1
End If
'Call PrcchkListAnswers()
'Call PrcQuestionText()
Dim lblSession As Label = DirectCast(MainContent.FindControl("lblSession"), Label)
lblSession.Text = Session.Item("questionbtn").ToString
End Sub
最佳答案
首先,您需要将 MasterType 标记放在 .aspx 标记页面的顶部(而不是 .vb 代码隐藏)。
其次,使用 Page.Master Property 引用母版页。然后您就可以访问您的方法:
Me.Master.btnNext_Click(sender, e)
关于vb.net - 从内容页面从 MasterPage 调用 Sub,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32247057/