0

我知道这已经被问了几次,但我无法让它工作。我有一个在列表框中使用的数据模板。不幸的是,文本和名称超出了右边界。我已经尝试使用 '*' 和 'Auto' 来定义行。有人可以告诉我我在这里做错了什么吗?

<Border Padding="10">
<Grid>
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="*"/>
    </Grid.ColumnDefinitions>

    <Grid.RowDefinitions>
        <RowDefinition Height="Auto"/>
        <RowDefinition Height="*"/>
    </Grid.RowDefinitions>

    <StackPanel Orientation="Horizontal" Grid.Column="0" Grid.Row="0" >
        <TextBlock Text="{Binding Name}" TextWrapping="Wrap" />
        <TextBlock Text="{Binding Created, Mode=OneWay}"/>
    </StackPanel>

    <TextBlock Grid.Column="0" Grid.Row="1" Margin="0,6,0,0" Text="{Binding Text}" TextWrapping="Wrap"/>
</Grid>

4

1 回答 1

3

看起来你在这里混淆了宽度和高度。您只为所有剩余空间设置了一个宽度(完整宽度)的列定义。您可以添加另一列或指定文本块的宽度以确保 TextWrapping 将发生...

于 2013-08-08T08:20:41.250 回答