我有一个 GridView ,它有两个简单的列、一个报告编号和一个简短的描述。这个简短的描述有一些回车是很常见的。如果是这种情况,我希望该行扩展其高度以适合所有文本。
当前,该字段呈现时可能显示第一行,但随后会截断其下方的文本。我如何显示所有文本,并根据需要调整高度?
这是否可以在每行的基础上完成,例如,如果下一份报告没有带回车的描述,它会只显示在一行上吗?
宁可similar to this question , 但在 WPF 与 ASP.net 中
这也可能是由于广泛使用了主题应用程序。如果是这种情况,我如何才能仅在此 GridView 中强制执行它?
XAML:
本来我只是把它当作
<GridViewColumn Width="365" Header="Desc" DisplayMemberBinding="{Binding desc}" />
我也试过
<GridViewColumn x:Name="colDesc" Header="Desc" Width="75" >
<GridViewColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding Desc}" />
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
我们正在使用应用程序范围的主题,很可能会明确设置高。如果是这样,我主要倾向于这样一个事实(来自评论),即主题正在覆盖其工作方式的默认值。如果是这样,我如何让它按照预期的方式行事(同样,从评论中,这听起来像是默认行为)。
使用第二个示例,它看起来像这样:
这里的文字看起来更大,所以我再次希望单元格调整到所需的高度。其中一些有多行,所以如您所见,我不会看到剩余的内容。我还尝试在文本 block 上设置高度,但没有效果。
最佳答案
这成功了。
public string TextBlockText { get { return "one line \r\ntwo line"; } }
<TextBlock Height="Auto" Width="100" HorizontalAlignment="Left" Text="{Binding Path=TextBlockText}" />
我将把如何将 TextBlock 放入 ListView 的问题留给您。
关于c# - 如何在包含回车符的 WPF GridView 中显示文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9915160/