- PR -

ASP.netで他のフォームのコントロールの値を参照が可能か?

投稿者投稿内容
葉瀬崎浩樹
大ベテラン
会議室デビュー日: 2005/06/28
投稿数: 115
お住まい・勤務地: 兵庫県
投稿日時: 2005-10-28 16:57
Server.Transfer を使った場合は、遷移後のPage内で、
HttpContextかIHttpHandlerあたりをごにょごにょして、
遷移前のPageを取り出せた気がします。
(詳細なコードは失念、たしかキャストは使った)
これで、パブリックプロパティから情報を取り出せます。

追記
ありゃ、クライアント側でしたか。。失礼しました。

[ メッセージ編集済み 編集者: 葉瀬崎浩樹 編集日時 2005-10-28 17:59 ]
葉瀬崎浩樹
大ベテラン
会議室デビュー日: 2005/06/28
投稿数: 115
お住まい・勤務地: 兵庫県
投稿日時: 2005-10-28 21:07
えっと、先の自分の発言があまりにも頼りないので、
記憶を頼りにコードを書いてみました。
#サーバ側の処理ですが、件名には沿っているということでお許し下さい。

[準備]
1.新規Webプロジェクトを作成する。
2.WebForm1にTextBox1とButton1を配置する。
3.WebForm2を追加し、TextBox1を配置する。

コード:
■WebForm1.aspx.cs
  public class WebForm1 : System.Web.UI.Page
  {
    // (略)
    private void Button1_Click(object sender, System.EventArgs e)
    {
      Server.Transfer( "WebForm2.aspx" );
    }

    public string Text1_Value
    {
      get{return TextBox1.Text;}
    }
  }

■WebForm2.aspx.cs
  public class WebForm2 : System.Web.UI.Page
  {
    protected System.Web.UI.WebControls.TextBox TextBox1;
    private void Page_Load(object sender, System.EventArgs e)
    {
      if (!IsPostBack)
      {
        WebForm1 f1 = (WebForm1)HttpContext.Current.Handler;
        TextBox1.Text = f1.Text1_Value;
      }
    }
  }


これで、WebForm1のプロパティ値をWebForm2で使用できます。
※Server.Transfer限定です。

スキルアップ/キャリアアップ(JOB@IT)