2

ページ A のテキスト ボックスに入力したデータをページ B でアクセスできるようにしたい

例: ユーザーはページ A のテキスト ボックスに自分の名前を入力します。

ページ B には「こんにちは」と表示されます (テキスト ボックスに入力した情報)

これはセッションを使用して達成できると聞きましたが、方法がわかりません。

セッションのセットアップ方法とデータの保存方法を教えてください。ありがとうございました!

4

5 に答える 5

5
Session["valueName"]=value; 

また

Session.Add("valueName",Object);

そして、ラベルの値を取得できます(例)

/*if String value */     
Label1.Text=Session["valueName"].ToString();

また

Label1.Text=Session.item["valueName"].ToString();

また、次の方法でセッションを削除できます。

/*This will remove what session name by valueName.*/
 Session.Remove( "valueName"); 

/*All Session will be removed.*/ 
Session.Clear(); 
于 2009-05-22T17:30:11.323 に答える
4
// Page A on Submit or some such
Session["Name"] = TextBoxA.Text;

// Page B on Page Load
LabelB.Text = Session["Name"];

セッションはデフォルトで有効になっています。

于 2009-05-22T17:28:13.307 に答える
1

はい、JohnOpincar が言ったようなことを行うこともできますが、その必要はありません。

クロスページ ポストバックを使用できます。ASP.Net 2.0 では、クロスページ ポストバックにより、別の Web ページへの投稿が可能になり、より直感的で構造化された保守可能なコードが得られます。この記事では、クロスページ ポストバック メカニズムのさまざまなオプションと設定を調べることができます。

ターゲット ページで次のコードを使用して、ソース ページのコントロールにアクセスできます。

protected void Page_Load(object sender, EventArgs e)
{
    ...
    TextBox txtStartDate = (TextBox) PreviousPage.FindControl("txtStartDate ");
    ...
}
于 2009-05-22T17:35:16.340 に答える
0

セッションを使用してこれを行うことができますが、ASP.NET 2.0 以降の場合は、クロス ページ ポストバックも使用できます。

http://msdn.microsoft.com/en-us/library/ms178139.aspx

if (Page.PreviousPage != null) {
    TextBox SourceTextBox = 
        (TextBox)Page.PreviousPage.FindControl("TextBox1");
    if (SourceTextBox != null) {
        Label1.Text = SourceTextBox.Text;
    }
}
于 2009-05-22T17:36:24.390 に答える