[英]How to access to variable in ASPX page?
ASPX:
<form id="form1" runat="server">
<%
int a = 25;
%>
<asp:Label ID="Label1" runat="server"
Text='<%#a %>'></asp:Label>
</form>
后面的代碼:
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
DataBind();
}
}
錯誤:
名稱“ a”在當前上下文中不存在
找到的解決方案:
ASPX:
<form id="form1" runat="server">
<asp:Label ID="Label1" runat="server"
Text="<%#a %>"></asp:Label>
</form>
后面的代碼:
public int a;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
a = 25;
DataBind();
}
}
這種方式將起作用.. ASPX:
<form id="form1" runat="server">
<asp:Label ID="Label1" runat="server"></asp:Label>
</form>
后面的代碼:
public int a;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
a = 25;
Label1.Text=a.ToString();
}
}
一些需要注意的是,ASPX文件是由它實現了IHttpHandler,所創建的類繼承的aspx.cs / aspx.vb,這說明在<%的繼承的System.Web.UI.Page類編譯成類@ Page%>指令,根據邏輯,您不能在后面的代碼中引用在aspx代碼塊中聲明的變量。
解決方法是,可以在后面的代碼中聲明protected
成員,然后從代碼塊訪問這些成員。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.