Asp.net 如何访问masterpage.master中masterpage.master.vb中定义的变量
我在masterpage.master.vb中收集了一组cookie,其中包含Browserhawk信息,例如Asp.net 如何访问masterpage.master中masterpage.master.vb中定义的变量,asp.net,syntax,master-pages,Asp.net,Syntax,Master Pages,我在masterpage.master.vb中收集了一组cookie,其中包含Browserhawk信息,例如 Dim useCSS as boolean = 0 Response.Cookies("Stylesheets").Value = brHawk.Stylesheets if Response.Cookies("Stylesheets") = True then useCSS = 1 如果样式表为True,我将useCSS设置为1,如果为false,我将useCSS设置为0 我需要在
Dim useCSS as boolean = 0
Response.Cookies("Stylesheets").Value = brHawk.Stylesheets
if Response.Cookies("Stylesheets") = True then useCSS = 1
如果样式表为True,我将useCSS设置为1,如果为false,我将useCSS设置为0
我需要在母版页的部分访问这些内容。母版,例如
if useCSS = true
Then load stylesheet
else
Dont load stylesheet
我在找到正确的语法以使其工作时遇到问题。使用css变量public variable并在主文件中编写此代码
<% if ( useCSS == true ) { %>
<link rel="stylesheet" href="" type="text/css" media="screen" />
<% } %>
注:我是C#Guy:)。我不知道您是否必须将其更改为与VB一起使用。您需要将其作为属性公开,以便在标记上使用它 在代码隐藏中:
Private _useCss As Boolean
Public Property UseCss() As Boolean
Get
Return _useCss
End Get
Set(ByVal value As Boolean)
_useCss = value
End Set
End Property
然后在标记中:
<% If UseCss = True Then %>
Your stylesheet link tag here
<% Else %>
else could be optional if you won't load anything
<% End If %>
在代码隐藏中,例如在页面加载时:
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If useCss Then
Dim stylesheet As New HtmlGenericControl("link")
stylesheet.Attributes.Add("rel", "stylesheet")
stylesheet.Attributes.Add("type", "text/css")
stylesheet.Attributes.Add("href", "../css/myCssFile.css")
FindControl("head").Controls.Add(stylesheet)
End If
End Sub
正如Ahmed所建议的,与其将useCSS作为公共变量,不如将其作为porperty公开。@Ahmad:+1表示建议属性:)
<head runat="server" id="head">
<%-- whatever you typically place here --%>
</head>
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If useCss Then
Dim stylesheet As New HtmlGenericControl("link")
stylesheet.Attributes.Add("rel", "stylesheet")
stylesheet.Attributes.Add("type", "text/css")
stylesheet.Attributes.Add("href", "../css/myCssFile.css")
FindControl("head").Controls.Add(stylesheet)
End If
End Sub