Visual C#2005を始めました。Formのコントロールを別の独立したクラスで操作させる場合、関数に何を引数として送ればよいのでしょうか。VCの時は、HWNDを送って、GetDlgItemで取得できたと思うのですが・・・。C#ではどのようにするのが、よいのでしょうか。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2007/09/24 19:23:21
  • 終了:2007/09/29 20:28:55

ベストアンサー

id:freemann No.1

freemann回答回数304ベストアンサー獲得回数472007/09/24 21:01:34

ポイント60pt

Controlクラスから継承されているHandleを渡せばいいとおもいました。

Form1.Handle

の感じです。

http://msdn2.microsoft.com/ja-jp/library/system.windows.forms.co...(VS.80).aspx

id:ymlab

回答ありがとうございました。

私もそう思ってform1.handleとかしてみたのですが、

残念ながらコントロールのインスタンスは選択できませんでした。

現在のところ仕方がないので、

クラス先で、Form1 formとしておいて、

Form1から別クラスへ渡す時に、別クラス.form1 = this;

として、さらにフォームデザイナ内のコントロールを

privateからpublicに変更することで解決しています。

しかし、本当にこんな方法でするようなものなのかが気になります。

2007/09/24 23:17:25

その他の回答(2件)

id:freemann No.1

freemann回答回数304ベストアンサー獲得回数472007/09/24 21:01:34ここでベストアンサー

ポイント60pt

Controlクラスから継承されているHandleを渡せばいいとおもいました。

Form1.Handle

の感じです。

http://msdn2.microsoft.com/ja-jp/library/system.windows.forms.co...(VS.80).aspx

id:ymlab

回答ありがとうございました。

私もそう思ってform1.handleとかしてみたのですが、

残念ながらコントロールのインスタンスは選択できませんでした。

現在のところ仕方がないので、

クラス先で、Form1 formとしておいて、

Form1から別クラスへ渡す時に、別クラス.form1 = this;

として、さらにフォームデザイナ内のコントロールを

privateからpublicに変更することで解決しています。

しかし、本当にこんな方法でするようなものなのかが気になります。

2007/09/24 23:17:25
id:F-15X No.2

F-15X回答回数111ベストアンサー獲得回数132007/09/24 22:15:33

このような事でしょうか?

なっちゃんのプログラミングTips

他のフォームのコントロールを参照するには

http://natchan-develop.seesaa.net/article/17715762.html

id:ymlab

これはVB。私はC#と書いたのですが。上記サイトのどこにC#と書いてあるのですか?

2007/09/24 23:20:37
id:F-15X No.3

F-15X回答回数111ベストアンサー獲得回数132007/09/25 07:16:09

ポイント20pt

間違えてすみません。

こちら参考になりますか?

使えないプログラマー

C# 他フォームのコントロールを参照

http://tukaenai-pg.cocolog-nifty.com/blog/2006/05/c__2de6.html

id:ymlab

回答ありがとうございます。

結局、1番の回答者さんに対して書かせていただいたコメントのような方法が定石なのでしょうか・・。

ずいぶんとC++と感じが違うので、とまどっています。

楽だと言えば楽なのですが、なんだがjavaみたいです。

2007/09/25 23:31:12

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません