2011-08-11 63 views
1

任何人都可以幫助我找出一種方法來檢索WPF中標籤頁標題的內容嗎?檢索選項卡標題內容

我想要的只是標題中的文本,所以我可以將它分配給其他變量,但似乎沒有任何獲取它的方法。

我對WPF很新,但最近一個小時左右用這個問題沒有返回任何有用的東西。

感謝

+1

可以了代碼PLZ? –

回答

1

你知道如何casting and such作品,對不對?

<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可以是任何東西,即使是複雜的控制,所以如果你沒有將其設置爲一個字符串自己,你無法恢復它作爲這樣的字符串,要麼是。

+0

我明白了。這有幫助。我只需要將標題轉換爲TextBlock對象。謝謝! – Luke

+0

@Luke:很高興幫助! (你可以[接受](http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work)我的答案,點擊左邊的複選標記) –

1

使用TabItem.Header 例如下面的代碼將設置第一個標籤爲「新頭」的header

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

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) 
+0

像,誰來設置這樣的標題? (好吧,可能有些人會這麼做,但不太可能) –

+1

或者你可以在TextBlock x:Name =「tbTC1」上放置並命名,然後通過tbTC1.text訪問它。 Sllev,我很喜歡你的答案,因爲它很好地覆蓋了tabcontrol和header。 – Paparazzi

+0

H.B.我常常設置標題。它允許格式化(例如換行符)和對齊方式,這些都不符合。 – Paparazzi

相關問題