2017-04-22 11 views
0

ボタンクリックでTabを削除しようとしています。これは、これまでの私のコードです:タブ項目を削除するには

private void btnCloseTab_Click(object sender, EventArgs e) 
{ 
    if (MessageBox.Show("Would you like to Close this Tab?", "Confirm", 
      MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) 
    { 
     tabControl.Remove(tabControl1.Tab); 
    } 
} 
+1

まああなたはプライベートボイドの前に4つのスペースを置くことができますか? – StuiterSlurf

+0

どのようなタイプの変数は 'tabControl'と' tabControl1'ですか? –

+0

もう少し詳しいコードを教えてください。これで誰も働くことはできませんか? https://msdn.microsoft.com/en-us/library/system.windows.forms.tabcontrol(v=vs.110).aspx – StuiterSlurf

答えて

1

tabControltabControl1名前はかなり混乱しているが、あなたはtabControlという名前のタブコントロールの現在選択されているタブを削除する必要があると仮定すると、あなたはこれを行うことができます:

if (tabControl.SelectedTab != null) 
    tabControl.SelectedTab.Dispose(); 
+0

ありがとうございました – Turbomarshmello

+0

答えを修正してください。正しくありません。 Remove()は非常に危険なメソッドです。タブページを破棄せずに永久にリークします。正しいコードはtabControl.SelectedTab.Dispose()です。 –

+0

@HansPassant:指摘していただきありがとうございます –

関連する問題