コントロールをフォームAにロードすると、次の機能を持つコントロールがあります。
private void button1_Click(object sender, EventArgs e)
{
var C = this.Parent.Parent.Parent.Parent.Parent as STP2Main;
C.DisposeControl(STP_Data.Data.ConfigConfigResource);
}
コントロールをフォームBIにロードする場合、これを書き込むにはこれが必要です。
private void button1_Click(object sender, EventArgs e)
{
var C = this.Parent.Parent.Parent as STP2Main;
C.DisposeControl(STP_Data.Data.ConfigConfigResource);
}
これは機能します。しかし、私は本当に好きではありませんthis.Parent.Parent...
(最大5倍の親)var C
行にブレークポイントを設定すると、それが指していることがわかりますが[STP_Design.STP2Main]
、関数をに変更すると、var C = STP_Design.STP2Main as STP2Main;
次のようなエラーが発生します:
'STP_Design.STP2Main'は'タイプ'であり、指定されたコンテキストでは無効です
Parent.Parent.Parentの部分を削除するにはどうすればよいですか?