如何在 .NET 4.5 数据网格列中使文本绕行
本文关键字:文本 网格 数据网 NET 数据 | 更新日期: 2023-09-27 17:57:05
我是新手。 我的应用程序有一个两列数据网格控件。 两者都包含文本字符串。 第一列文本始终适合其列,但第二列中的文本在达到列宽或控件宽度时应换行。 每当它换行时,我还希望第 1 列的内容垂直居中。
如何让第二列换行,第一列的内容在换行时垂直居中?
目前我正在自动生成列。 我尝试不自动生成列并使用以下方法:
<DataGrid x:Name="LogGrid" Margin="10,10,10,0" VerticalAlignment="Top" Loaded="LogGrid_Loaded" Background="#FFB8B5A4" MinWidth="380" HorizontalAlignment="Center" CanUserReorderColumns="False" CanUserResizeColumns="False" CanUserResizeRows="False" Width="380" AutoGenerateColumns="False">
<DataGrid.Columns>
<DataGridTextColumn x:Name="TimeColumn" Header="Time" IsReadOnly="True" SortDirection="Ascending" Width="55"/>
<DataGridTextColumn x:Name="LogEntryColumn" Header="Log Entry" CanUserSort="False" Width="325">
<DataGridTextColumn.ElementStyle>
<Style TargetType="{x:Type TextBlock}">
<Setter Property="TextBlock.TextWrapping" Value="Wrap"/>
</Style>
</DataGridTextColumn.ElementStyle>
</DataGridTextColumn>
</DataGrid.Columns>
</DataGrid>
结果是文本换行不起作用,并且我的数据未传输到控件的列中(我没有使用数据绑定,因为我还不理解它)。 我不知道如何使数据出现在手动定义的列中。 这会强制我使用数据绑定吗?
所以我放弃了这种方法,正在等待帮助。
谢谢。
右键单击DataGridView
上的"编辑列",选择您的列,展开"默认单元格样式"并设置"换行模式" = TRUE