【问题标题】:How to Search specific Tabitem Header which is created dynamically ? - WPF如何搜索动态创建的特定 Tabitem Header? - WPF
【发布时间】:2019-09-17 23:15:33
【问题描述】:

我正在动态创建 tabitems。请告诉我如何搜索特定的 tabitem 标题,而不管所选的 tabitem。实际上,我想确保在创建新 tabitem 时 tabitem 不会重复。 以下是我想要的伪代码..

foreach(var tabitem in tabcontrl.items)
{
if(newHeader == tabitem.Header){
//do nothing
}
else{
tabControl.Items.Add(newTabItem(newHeader));
}
}

【问题讨论】:

    标签: c# wpf


    【解决方案1】:

    这取决于您如何创建TabItems 以及如何设置Header 属性。

    如果您在 XAML 标记中显式地将 TabItem 元素添加到 TabControl,如下所示:

    <TabControl>
        <TabItem Header="..." />
    </TabControl>
    

    ...这应该可以:

    if (!tabControl.Items.OfType<TabItem>().Any(x => x.Header?.ToString() == newHeader))
        tabControl.Items.Add(new TabItem() { Header = newHeader } );
    

    如果您使用 MVVM 并将 TabControl 绑定到源集合,则应遍历此集合:

    sourceCollection.Any(x => x.HeaderSourceProperty == newHeader)
    

    【讨论】:

      猜你喜欢
      • 2010-11-09
      • 2014-10-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-10
      • 1970-01-01
      相关资源
      最近更新 更多