簡體   English   中英

從asp.net中的上一頁讀取控件

[英]Reading controls from previous page in asp.net

我有Page1.aspx包含

Name: <asp:TextBox ID="txt1" runat="server" />

Page2.aspx嘗試通過以下方式訪問其內容

   TextBox txt2 = (TextBox)PreviousPage.FindControl("txt1");

但是我最終得到的對象引用未設置為對象異常的實例

我以前使用過PreviousPage ,並且在網上其他地方找到的這段代碼片段都取得了成功(不記得在哪里找到了!)

所以..

選項1:

在第一頁上,您具有將您帶到第二頁的按鈕,您需要將PostBackUrl屬性設置為新的頁面URL:

<asp:Button ID="button1" Runat="server" Text="submit" PostBackUrl="~/Page2.aspx" />

這是假定您的第一頁是重定向到Page2.aspx的表單

然后,在新頁面的后面代碼中,您需要按照以下內容編寫代碼:

public void page_load()
{
if(!IsPostBack)
{
TextBox tb = (TextBox)PreviousPage.FindControl("txt2");
Response.Write(tb.Text);}
}

如果您想在第二頁上進行更多的回發,則需要將前一頁的txt2.Text的值轉移到新頁上的文本框或標簽上,否則將丟失該值。

選項2:

您還可以肯定使用Session變量來存儲數據嗎?

Session["text"] = txt2.Text;

一旦您進入了新頁面,最后一頁可能就不見了,建議您在會話中傳輸數據。

您是指ASP.NET 2.0向導控件嗎? 鏈接中有一個示例。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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