【问题标题】:TextBlock not wrapping in GridTextBlock 没有在 Grid 中换行
【发布时间】:2013-07-28 01:21:48
【问题描述】:

我有以下 XAML,旨在在其旁边显示一个 Image 和两个 TextBlocks

<StackPanel Orientation="Horizontal" >
    <Image Source="{Binding CoverArt}" Height="150" />
        <StackPanel Orientation="Vertical">
            <StackPanel>
                <TextBlock FontSize="30" Text="{Binding Title}" TextWrapping="Wrap" />
            </StackPanel>
            <Grid Width="auto">
                <TextBlock FontSize="22" Text="{Binding Summary}" TextWrapping="Wrap" />
            </Grid>
         </StackPanel>
</StackPanel>

我的问题是让文本换行。我试过使用Grid 并分配列的宽度,但它没有用。也没有将宽度值设置为自动。唯一有效的是对宽度进行硬编码,但我不希望这样。谢谢。

【问题讨论】:

  • 您是否尝试将列的宽度设置为分数? width="2*" 这将为您提供一些没有像素集大小的边界。您需要以某种方式为容器设置约束。如果你有两列并且没有设置大小,它们将得到 50%。 2* 将使该列占总列的 2/3。

标签: silverlight windows-phone-7 xaml


【解决方案1】:

Stackpanel 会拉伸到其内容的大小,所以我不会使用它。使用网格,如以下帖子中所述:

TextBlock TextWrapping not wrapping inside StackPanel

Text in StackPanel doesn't wrap (wp7)

TextBlock inside stackpanel does not wrap text

快速比较: 使用堆栈面板之前

在一个网格之后(您可能需要重新排列元素)

最后一段的代码:

<pre>
    <Grid Grid.Row="1">
        <Grid.ColumnDefinitions>
            <ColumnDefinition/>
            <ColumnDefinition/>
        </Grid.ColumnDefinitions>
        <Ellipse Fill="red" Width="150" Height="150" />
        <StackPanel Grid.Column="1" Orientation="Vertical">
            <StackPanel>
                <TextBlock FontSize="30" Text="basdljhba dnaiks d., kasndca casn oiäc cas lkcnaso ca dxjwöbdq wkjöbdqw dkjwqb " TextWrapping="Wrap" />
            </StackPanel>
            <Grid Width="auto">
                <TextBlock FontSize="22" Text="dewdewdewdewdewewd" TextWrapping="Wrap" />
            </Grid>
        </StackPanel>
    </Grid>

您是否尝试将列的宽度设置为分数? width="2*" 这将为您提供一些没有像素集大小的边界。您需要以某种方式为容器设置约束。如果你有两列并且没有设置大小,它们将得到 50%。 2* 将使该列占总列的 2/3,请参见下面的示例。

【讨论】:

  • 谢谢,图片和链接帮助我更好地理解:)
  • 没问题,网上解释问题(或解决方案)不容易:)
  • 对潜在问题的解释比我的要好得多。我现在将删除我的。谢谢鸢尾花。
猜你喜欢
  • 2018-05-28
  • 1970-01-01
  • 2010-09-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-02
  • 1970-01-01
相关资源
最近更新 更多