簡體   English   中英

為什么在ItemsControl模板中的TextBlock周圍需要邊框才能使TextBlock換行?

[英]Why is a Border needed around a TextBlock in an ItemsControl template to make the TextBlock wrap?

當TextBlock是ItemsControl中每個項目的模板時,我在嘗試弄清楚如何制作TextBlock包裝時發現了這個問題

我原來的模板:

<ItemsControl.ItemTemplate>
    <DataTemplate>
        <Grid>
            <TextBlock Padding="2" x:Name="SummaryRow" Text="{Binding}" TextWrapping="Wrap" />
        </Grid>
    </DataTemplate>
</ItemsControl.ItemTemplate>

為了使文本實際換行,我不得不用邊框包圍TextBlock。 我相信其他容器也會起作用。

為什么是這樣? (順便說一句我應該提到ItemsControl在ScrollViewer中)

對於要包裝的文本,您需要restrict the size of the textBlock以便在文本超出限制限制時包裝文本。 但是由於你的textBlock外面有scrollViewer,它的大小沒有任何重復,因此沒有換行。 您需要將HorizontalScrollBarVisbility to Collapsed or Hidden設置HorizontalScrollBarVisbility to Collapsed or Hidden來限制文本的大小和包裝。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM