【发布时间】:2014-10-09 16:28:48
【问题描述】:
我有一个 XamDataGrid 和 AutoGenerateFields="False" 和一堆 Fields 定义。网格中的数据具有换行符\n,字面上显示为“\n”。如何让网格将它们显示为实际的换行符并让字段能够显示多行?
【问题讨论】:
标签: c# wpf xaml xamdatagrid
我有一个 XamDataGrid 和 AutoGenerateFields="False" 和一堆 Fields 定义。网格中的数据具有换行符\n,字面上显示为“\n”。如何让网格将它们显示为实际的换行符并让字段能够显示多行?
【问题讨论】:
标签: c# wpf xaml xamdatagrid
我认为您可以使用值转换器将使用“\n”的字符串拆分为多行。 在 XAML 中设置下面的 FieldLayoutSetting
<igDP:XamDataGrid.FieldLayoutSettings>
<igDP:FieldLayoutSettings AutoGenerateFields="False"
AutoArrangeCells="Never" HighlightAlternateRecords="True"
DataRecordSizingMode="SizedToContentAndFixed"/>
</igDP:XamDataGrid.FieldLayoutSettings>
然后将Field的编辑器样式更改为Text Wrap
<igDP:TextField Name="Info" Label="Description" Column="6" Row="0"
Width="4*" Converter="{StaticResource InfoToStringConverter}" >
<igDP:TextField.Settings>
<igDP:FieldSettings >
<igDP:FieldSettings.EditorStyle>
<Style TargetType="{x:Type igEditors:XamTextEditor}">
<Setter Property="TextWrapping" Value="Wrap" />
</Style>
</igDP:FieldSettings.EditorStyle>
</igDP:FieldSettings>
</igDP:TextField.Settings>
</igDP:TextField>
我测试了它,它可以正确显示多行
【讨论】: