• ベストアンサー

フォーム間でのオブジェクト又は値の共有

Visual StudioにてWindowsフォームアプリを作成しています。 ログイン画面がありそこで使用したユーザーIDを別の画面で表示させたいというとき どうすればよいのでしょうか。 インターネットを検索しているとフォーム情報を次の遷移先の画面のフォームクラスに渡す というような処理をやっていたのですがこの方法だと画面数が多いと大変だと思います。 セッションのようなどの画面からもアクセスできるような仕組みはWindowsフォームアプリには 用意されているのでしょうか。一般的にはどのようにやるものなのでしょうか。

質問者が選んだベストアンサー

  • ベストアンサー
  • Wr5
  • ベストアンサー率53% (2173/4061)
回答No.1

>インターネットを検索しているとフォーム情報を次の遷移先の画面のフォームクラスに渡す >というような処理をやっていたのですがこの方法だと画面数が多いと大変だと思います。 データをまとめて保持するクラスを作って、フォームのプロパティなどで受け渡しするようにする。 とかありそうですが……。 面倒なら受け渡しする為のプロパティを組み込んだクラスをFormクラスから継承して、そのクラスを継承してそれぞれのフォームを作ればコード書く場所は限定できますし。 # まぁ、フォームを追加するたびにコードの一部を修正する必要があるでしょうけど。(どうせ追加時の1回だけです) あとは…Program.csにフィールド追加でしょうかね? やったことはありませんけど。 http://okwave.jp/qa/q4740138.html http://social.msdn.microsoft.com/Forums/ja-JP/56f0d319-d1b6-4adb-b91a-c92e16c3bdfc/formclass?forum=csharpgeneralja などなど。

unko347
質問者

お礼

ご回答ありがとうございます。 リンク先を参照してみたいと思います。

その他の回答 (1)

  • DoubtOwl
  • ベストアンサー率50% (63/124)
回答No.2

一般的にはあなたが調べられたようにフォームに受け渡します。 Staticクラスやグローバル変数で調べるといいかと思います。

unko347
質問者

お礼

ご回答ありがとうございます。 早速、調べてみたいと思います。

関連するQ&A

専門家に質問してみよう