それぞれがいくつかのラベルとコンボボックスを含む複数のパネルを生成するコードがあります。各パネルに含まれるコントロールの 1 つはチェックボックスです。ユーザーがチェックボックスをオンにすると、チェックボックスがあったパネル全体が削除される必要があります。パネルを生成する foreach ループ内では、パネル自体に「Strip」という名前でアクセスできます。このループの外側で、必要なすべてのパラメーター (または引数、ここでの用語については不明) を転送すると、ラベル「コールサイン」の 1 つの後に呼び出されるため、その名前をメソッドに取得する必要がある場合は、パラメータ「callsign.Text」として設定します。さて、ここに私の Checbox 生成コードがあります:
CheckBox check = new CheckBox();
check.Location = new Point(270, 10);
check.Name = "check:" + callsign.Text;
check.CheckedChanged += new System.EventHandler(CheckCheckedChanged(callsign.Text));
Strip.Controls.Add(check);
メソッドCheckCheckedChangedの定義は次のとおりです。
public void CheckCheckedChanged(string callsign, object sender, EventArgs e)
{
}
... まず、 「引数を 1 つ取るcheck.CheckedChanged += new System.EventHandler(CheckCheckedChanged(callsign.Text));
メソッドのオーバーロードはありません」という行でエラーが発生します。CheckCheckedChanged
何が悪いのかわからないので、それが私の最初の質問です。2 つ目は、callsign.Text にちなんで名付けられた 1 つの特定のパネルを削除するメソッドの書き方がわかりません。単に「callsign dispose」と書くと、うまくいかないと思います。前もって感謝します