Получить содержимое заголовка вкладки - PullRequest
1 голос
/ 11 августа 2011

Может кто-нибудь помочь мне найти способ получить содержимое заголовка вкладки в WPF?

Все, что мне нужно, - это текст в заголовке, чтобы я мог назначить его какой-то другой переменной, но, похоже, нет никакого способа добраться до него.

Я очень новичок в WPF ... но последний час или около того поиск этой проблемы не принес ничего полезного.

Спасибо

Ответы [ 3 ]

2 голосов
/ 11 августа 2011

XAML:

<TabControl x:Name="tabControl">
            <TabItem>
                <TabItem.Header>
                    <TextBlock>SomeText</TextBlock>
                </TabItem.Header>
            </TabItem>
        </TabControl>

Для доступа к тексту:

((System.Windows.Controls.TextBlock)(((System.Windows.Controls.HeaderedContentControl)(this.tabControl.Items[0])).Header)).Text

Для доступа к элементу управления контентом:

 (System.Windows.Controls.HeaderedContentControl)(this.tabControl.Items[0])).Header)
1 голос
/ 11 августа 2011

Вы знаете, как работает литье и тому подобное , верно?

<TabControl>
    <TabItem Name="_tabItem1" Header="MyHeader"/>
</TabControl>
//Header is an object and hence needs to be casted for retrieval as string
string headerText = (string)_tabItem1.Header;
MessageBox.Show(headerText);

TabItem.Header может быть чем угодно, даже сложным управлением, так что если вывы не установили это в строку самостоятельно, вы не можете получить ее как строку, подобную этой.

1 голос
/ 11 августа 2011

Используйте TabItem.Header, например, следующий код установит header первой вкладки в "Новый заголовок":

(tabControl1.Items[0] as TabItem).Header="New header";
...