- PR -

ダイアログボックスから親フォームのコントロール(クラス)を操作する方法。

投稿者投稿内容
がんちゃん
会議室デビュー日: 2002/02/21
投稿数: 12
投稿日時: 2004-03-12 16:27
引用:

ラフィンさんの書き込み (2004-03-12 15:02) より:
ヒントです。

引用:

  Form mdlg = new Form2();
  mdlg.ShowDialog(this);



 この2行の間(つまりインスタンスを作ってから表示する間)では、mdlgはすでに存在しているわけだからある程度の制御はできる。




ちょっと問題があったのですが、

  mdlg.dataSet2 = dataSet1.Copy();

で、出来ました。

実を言うと、最初はmdlg.dataSet2で出来ると予想していたのですが、コード補完も効かないし、コンパイルするとCS1309エラーが出てしまい、やり方が間違ってるのだろうかと小一時間悩んでいたのです。そこで色々調べてたら、実は自分の書いたコードがおかしい事に気が付きました。

誤)  Form mdlg = new Form2();
正)  Form2 mdlg = new Form2();

ですよね? 大変お恥ずかしい限りです。今思えば、

  Form2 mdlg = new Form2();

と言うのは、要は

  Form2 mdlg;        //変数の宣言
  mdlg = new Form2();  //インスタンス生成

を1行で書いているのですね。この事にもっと早く気付いてれば、皆さんにお手数お掛けせずに済んだのですが…どうも申し訳御座いません。

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