フォーム2の特定のタグで識別されるボタンがいくつかあります。私はこれを行うにはどうすればよい、私が試した:フォームのプロパティを別のフォームから変更するにはどうすればいいですか?
foreach (Button but in Bridge.Form3)
{
if (but.Tag == tagcheck)
{
but.BackgroundImage = Properties.Resources.inactive;
}
}
私のプロジェクトの名前は橋で、私が欲しい画像が非アクティブという名前の私のリソースです。私は、下のテキストでBridge.Form3が
私は、試したことのエラーを取得し、この:オブジェクト参照が非静的フィールド、メソッド、またはプロパティのために必要とされる:私はエラーメッセージが表示されました
foreach (Control ctrl in Form3.Controls)
{
if (ctrl.GetType() == typeof(Button) && ((Button)ctrl).Tag == tagcheck)
{
((Button)ctrl).BackgroundImage = Properties.Resources.inactive;
}
}
フォーム2は既にインスタンス化されています。
エラーメッセージを共有するのに役立たないと思わないかセージ? PSフォームの 'Controls'プロパティを' foreach'にしたいと思います。フォーム自体ではありません。 –
Form2が後でインスタンス化される場合、Form3を変数として渡してそこから変更することができます –
どちらの場合も、オブジェクトにアクセスするためにオブジェクトを使用しないクラス名のみを使用しています。これは静的クラス。 したがって、任意のクラスのメンバーにアクセスするには、そのクラスを静的にするか、そのクラスのオブジェクトを作成する必要があります。 –