簡體   English   中英

如何在ASPX頁面中訪問變量?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM