ASP.NETのApplication("・・・")のように、VB.NETにおいて別のフォームで値を共有する方法がわかりません。誰か教えていただけませんか?
共有メンバ変数を宣言して使用します。
例:Public Shared Hoge as integer
この意味が解ったら、コントロールの共有方法を教えます。
わかりませんが、教えてください。とりあえずパブリックだからどこからでも使用できますよってことなんでしょうか?なにぶん素人なものですので・・・。
Sharedがキーワードです。MSDNを見て見たら詳しく書いていますよ
あと、フォームも一つのクラスだと言う事です。
つまり、カプセル化されているんです。だから、Sharedがミソなんです。
ありがとうございます。たしかにSharedで検索してみたらいろいろ出てきました。まだ理解できてませんが(笑)ちょっと調べてみます。
http://madia.world.coocan.jp/index2.html
にコントロール共有の内容が乗っています。見てみてください。
ちなみに、たとえばFORM1のTEXTBOX1に記入した内容も、別のページで利用できるのでしょうか?FORM1で文字列などを受け取って、FORM2でデータベースにつないでその文字列を検索条件にして利用するといった感じにです。
アヒルの卵さん:
> ASP.NETのApplication("・・・")のように
元々の質問がASP(.NET)のApplicationスコープのグローバルな値と同じようなものと聞かれているので、Sharedキーワードを使えばOKという
解答も間違いというわけではありませんが、
Sharedキーワード自体はあるクラスの各インスタンス間で一つの値を共有するためにある仕組みで
画面間のデータを受け渡すための仕組みではありません。
#そのようにも使おうと思えば使えるというだけで。
Application("・・・")は有無を言わせないグローバル変数そのものなので、
画面間のデータを受け渡しのためであれば適切ではありません。
クラス、インスタンスというオブジェクト指向の根本的な考え方を理解しましょう。
データを受け渡しするためにはPublicなプロパティを用意すればよいとわかると思います。
オブジェクト指向とVB.NETの基礎を学ぶなら下記の書籍がお勧めです。
「ステップバイステップで学ぶ オブジェクト指向プログラミング実践講座
マイクロソフト公式解説書」
ツイート | ![]() |