0

に多数のボタンがありますWindows Form Application。各ボタンには独自のイベント ハンドラー関数があり、合わせて 1500 行を超えます。

これらのすべての「コールバック」関数を別のファイルに移動したいのですが (を使用して実行できますpartial class MainForm)、Visual Studio はメイン フォーム ファイルに 35 個のイベント ハンドラーすべてのプロトタイプを作成します (内部に同じ関数が複数定義されているため、コードはコンパイルされません)。MainForm) Form Designer を使用するたびに (異なるラベルを設定するなど)。

私の質問は、Microsoft Visual Studio 2010 がこれらのプロトタイプを何度も再作成するのを防ぐにはどうすればよいですか?

イベント ハンドラのプロトタイプの例:

private void exportSelectedItems_Click(object sender, EventArgs e)
{
    throw new NotImplementedException();
}
4

1 に答える 1

1

Visual Studioは、何らかの理由で、フォームデザイナーに直接関連付けられたファイルにイベントハンドラーが存在しない場合にイベントハンドラーを作成します。これは、フォームに変更が加えられた場合にのみ発生します。

これにより、上記の動作が発生します。

ただし、コンストラクターのデザイナーやカスタムinit関数ではなく、コードを使用してイベントハンドラーを手動で追加できます。

例えば、

public MainForm()
{
   exportSelectedItems.Click += new EventHandler(exportSelectedItems_Click);
}
于 2012-11-29T16:58:52.520 に答える