1

如何将 WPF DataGrid 中每个单元格的 TextWrapping 设置为“NoWrap”?我了解单元格本身没有“TextWrapping”属性,但我想在单元格内的控件上设置该属性。

我正在使用的 DataGrid 没有明确定义的列,它显示的结果集是动态的。

我正在寻找类似于以下链接中提供的答案的解决方案。但是我不想显式覆盖单元格样式/模板并定义要使用的控件。相反,我想说,如果正在使用 TextBlock,请将其 TextWrapping 属性设置为 NoWrap。

WPF 工具包数据网格单元格文本换行
如何在所有列标题上启用文本换行?

4

1 回答 1

1

在 DataGrid 的资源中,您可以为 TextBlocks 指定另一种默认样式。这应该满足您的要求(“如果正在使用 TextBlock,请将其 TextWrapping 属性设置为 NoWrap ”)。如果 TextBlock 明确指定要使用的不同样式,这将不起作用。

<DataGrid ...>
    <DataGrid.Resources>
        <Style TargetType="{x:Type TextBlock}">
            <Setter Property="TextWrapping" Value="NoWrap"/>
        </Style>
    </DataGrid.Resources>
    ...
</DataGrid>

(未经测试,因为我现在没有可用的 Visual Studio。)

于 2010-11-16T19:11:22.963 回答