0

是否可以在 Silverlight Datagrid 中手动定义换行符的位置?(而不是到达边界时自动换行到下一行)

这似乎是代码(source):

 <sdk:DataGridTextColumn 
    Header="Address"
    Width="150"
    Binding="{Binding Address}" >
    <sdk:DataGridTextColumn.ElementStyle>
        <Style TargetType="TextBlock">
            <Setter Property="TextWrapping" Value="Wrap"/>
        </Style>
    </sdk:DataGridTextColumn.ElementStyle>
 </sdk:DataGridTextColumn>

但是我如何手动换行呢?

4

1 回答 1

0

在常见的 WPF 控件中是可能的,所以我相信在 Silverlight 上也应该是可能的。基本上,您需要将 TextBlock 控件定位在列的每个单元格上,类似于为它提供文本环绕样式所做的工作。

由于您没有从您的问题中澄清您是要以编程方式还是在 XAML 上分配文本,所以我将为您提供有关如何执行这两种操作的提示。

您可以使用类似于此答案的方法以编程方式分配文本:

txtBlock.Inlines.Add("This is the first paragraph");
txtBlock.Inlines.Add(new LineBreak());
txtBlock.Inlines.Add("This is the second paragraph");

另一方面,如果您想直接在 XAML 上分配文本,您可以<LineBreak/>直接在文本中使用标记,如本答案所述:

<TextBlock>
    This is the first paragraph <LineBreak/>
    This is the second paragraph
</TextBlock>
于 2013-04-15T15:22:08.170 回答