ASP.NETページで前のページにデータを送信する

ASP.NETのウェブページでは、PreviousPageを使用して前のページの内容を取得することができます。PreviousPageを跨いで送信する方法は、Server.TransferまたはResponse.Redirectメソッドを使用して制御を別のページに移し、同時に現在のページの内容をターゲットページに渡すことです。以下は、PreviousPageを使用した例のコードです:

ホームページ(Default.aspx):

<asp:TextBox ID="txtName" runat="server"></asp:TextBox>
<asp:Button ID="btnNext" runat="server" Text="Next" OnClick="btnNext_Click" />

ボタンのクリックイベントで、Server.Transferメソッドを使用してコントロールを第2ページに移し、現在のページの内容を第2ページに渡す。

protected void btnNext_Click(object sender, EventArgs e)
{
    Server.Transfer("SecondPage.aspx", true);
}

セカンドページ(SecondPage.aspx):

<asp:Label ID="lblName" runat="server"></asp:Label>

第2ページのPage_Loadイベントで、PreviousPageプロパティを使用して前のページの内容を取得し、それをLabelコントロールに表示します。

protected void Page_Load(object sender, EventArgs e)
{
    if (PreviousPage != null)
    {
        TextBox txtName = (TextBox)PreviousPage.FindControl("txtName");
        if (txtName != null)
        {
            lblName.Text = txtName.Text;
        }
    }
}

この例では、ユーザーが第1ページで名前を入力し、次へボタンをクリックすると、制御が第2ページに移行し、前のページで入力された名前が表示されます。セッションやクエリストリングを使用せずにデータを送信するためにPreviousPageを使用することができます。

bannerAds