0

TabControl.TabPages.Clear();動作を停止しました。今は何も解りません。

コード:

    private void menuItem39_Click(object sender, EventArgs e)
    {
        tabControl.TabPages.Clear();
    }

なぜこれを行うのでしょうか?

以下は、TabPages を TabControl に動的に追加するために使用するコードです。

public void menuItem7_Click(object sender, EventArgs e)
{
    tabControl.TabPages.Add(new TabPage() { Text = "Untitled" });
}
4

1 に答える 1

3

あなたは非常に危険なコードを書いています. Clear() メソッドはあなたが望んでいることをしません. TaskMgr.exe を起動し、[プロセス] タブをクリックします。View + Select Columns を使用し、USER Objects オプションにチェックマークを付けます。リストでプログラムを見つけて、表示された値に注目してください。Clear() を呼び出しても、USER オブジェクトの値は減らないことに注意してください。おそらく、プログラムを使用している間、着実に上昇していることがわかります。表示された値が 10000 に達すると、非常に悪いことが起こります。

タブ ページを削除する適切な方法は、それらを破棄することです。このような:

   while (tabControl1.TabCount > 0) tabControl1.TabPages[0].Dispose();
于 2013-08-27T09:04:30.933 に答える