2011-06-19 3 views
0

私は、異なるユーザーコントロールを呼び出すパネルを含む親フォームを持っています。 たとえば、ファイルは次のようなものです。C#で別のインターフェースパネルのコンボボックスにアクセスするにはどうすればよいですか?

のForm1.cs - >これらに含ま - >を動的パネル(インターフェース1またはインターフェイス2)

interface1.cs interface2.csを変更するコンボボックスが含まれてい - >メインパネルに

selectioninterface.csを含みパネル内にform1.csが呼び出す別のパネル。

私は現在、これを使用してform1パネルをループしています。

foreach(Control control in panel.Controls) { 
     if(control.GetType() == typeof(selectioninterface)) 
     { 

     } 
} 

私はこの部分を持っていましたが、interface1とinterface2のパネルにあるテキストボックスとコンボボックスの情報にアクセスする必要があります。どうすればそれらにアクセスできますか?

+0

が正しい型にコントロールをキャストし、あなただけのコードからそれらをアクセスもできますので、コントロールが公開する存在すれば、これはコントロールのコレクションを返します

this.Controls.Find("YourControlName", true); 

を使用することができます。 – CodingBarfield

答えて

2

指定したコントロールが

+0

-1非常に簡単なコードで、はるかに簡単に修正できます – CodingBarfield

1

私は、インターフェイスでイベントを定義し、親フォームでイベントを処理することをお勧めします。イベントでは、値を引数として渡します。

public delegate void MyEventHandler(object value); 

event MyEventHandler MyEvent; 

コントロール値を変更するとイベントが発生します。

+0

どうすればいいですか?少しのコード例を教えてください。 – js0823

関連する問題