WPF裡的Label物件想要隨Grid物件大小自動斷行怎麼辦?

 

我想操作Label物件其文字能夠依Grid物件的寬度做自動斷行(line break or new line or Word wrap),

一開始一值對Label物件調整,我是使用<AccessText TextWrapping="WrapWithOverflow">來做自動斷行,

但發現其不能依照Grid大小作自動斷行。

<Grid>
    <Label Width="200" HorizontalAlignment="Left" Target="{Binding ElementName=textBox1}">
        <AccessText TextWrapping="WrapWithOverflow">
            _Another long piece of text that requires text wrapping goes here.
        </AccessText>
    </Label>
</Grid>

最後才發現到在WPF裡面有一個TextBlock就可以做到依照Grid大小作自動斷行了

<Grid>
    <TextBlock x:Name="textBlock" Margin="10,10,10,10" TextWrapping="Wrap" Text="TextBlockTextBlockTextBlock"/>
</Grid>

範例檔

 

參考資料:

How can I wrap text in a label using WPF?

Automatic linebreak in WPF label