2009-12-02 54 views
4

我有串,我在TextBlock中顯示,我的TextBlock有一些固定的大小,我需要顯示的方式,將文本,如果字符串不能在TextBlock的適合,那我也在下一個TextBlock中分割字符串,我怎麼能做到這一點。如何獲得文本適合於文本塊在WPF

回答

11

你爲什麼不嘗試使用TextBlockTextWrapping財產?

XAML:

<TextBlock TextWrapping="Wrap" Text="very very very long text" Width="30"/> 

C#:

myTextBlock.TextWrapping = TextWrapping.Wrap; 
+0

我的TextBlock有固定的寬度以及固定的高度,如果我使用的換行,然後它會爲寬度工作,但不適合的高度。 – Firoz 2009-12-02 11:10:31

+1

在這種情況下,我建議包裝,並具有垂直的ScrollViewer一個文本塊 - 我們兩個答案的組合。 – MoominTroll 2009-12-02 11:13:19

+0

您的TextBlock具有固定高度是否真的有必要?你能從UI定義中發佈一些代碼嗎? – 2009-12-02 11:21:26

3

如果你不想換,那麼在水平/垂直滾動條打耳光的是,你可能會想探索另一種選擇。閱讀這個問題,我認爲textwrapping可能更合適(聽起來你不想隱藏任何東西),但選項總是很好。

<ScrollViewer Height="30"> 
    <TextBlock Width="30" TextWrapping="Wrap">HElooooooooooooooooooooooooooooooooooooo</TextBlock> 
</ScrollViewer> 

編輯:結合一個單詞包裝和scrollviewer。

+0

好主意,但如果文本塊是太小,看起來有點古怪。 – 2009-12-02 11:23:58

+0

真,但「寬度= 30」和「高度= 30」是與該小例子工作完全任意的值。如果用戶界面中的文本塊真的很小,但需要保存大量文本,那麼我認爲用戶界面設計存在問題。 – MoominTroll 2009-12-02 11:40:39