まず、この質問はこの質問のフォローアップです。質問の半分しか答えられなかったような気がします。
tabItems
で参照されているを削除するだけでなく、それらの を参照しName
て削除できる必要もあります。tabItems
Headers
私の答えを実装してに変更n.Name
するとn.Header
、次のようになります。
var tabToDelete = tabControl.Items.OfType<TabItem>().SingleOrDefault(n => n.Header == stringValue);
if (tabToDelete != null)
tabControl.Items.Remove(tabToDelete);
同じようには機能しないことがわかりました。これでうまくいくはずですか、それともこの構造全体を編集する必要がありますか? tabItem
もしそうなら、必要なものがによって参照されていることを確認するにはどうすればよいHeader
ですか?
追加: によって参照されるタブName
が削除されると、それらは画面から削除されますが、によって参照されるタブは削除されHeader
ません (手動でタブを切り替えるまで)。これは、それらがまだプログラムに存在していると私に思わせます。