【发布时间】:2013-08-06 09:39:43
【问题描述】:
目前我需要格式化数据单元格列类型DataGridTextColumn中的工具提示字符串
这是我的尝试:
<DataGrid.Columns>
<DataGridTextColumn Header ="Count Number">
<DataGridTextColumn.CellStyle>
<Style TargetType="DataGridCell">
<Setter Property="ToolTip"
Value="{Binding CountNumber, StringFormat={}{0:00}}">
</Setter>
</Style>
</DataGridTextColumn.CellStyle>
<DataGridTextColumn.Binding>
<Binding Path="CountNumber" StringFormat="{}{0:00}" UpdateSourceTrigger="PropertyChanged" />
</DataGridTextColumn.Binding>
</DataGridTextColumn>
<!-- other columns-->
</DataGrid.Columns>
我也试过了:
<DataGridTextColumn.CellStyle>
<Style TargetType="DataGridCell">
<Setter Property="ToolTip" Value="{Binding CountNumber}"/>
<Setter Property="ToolTip.ContentStringFormat" Value="{}{0:00}"/>
</Style>
</DataGridTextColumn.CellStyle>
但它们都不起作用。
例如,数字3 应显示为03。有什么想法吗?
【问题讨论】:
-
如果有异常或复杂的字符串格式要求,我一直在使用值转换器(通过 ConverterParameter 属性传入格式提示)或在虚拟机。
-
@GarryVass ViewModel 中的转换器或字符串格式属性应该是有意义的,但问题是我无法触及任何源代码。他们说我只能违背我的意愿编辑 XAML 文件。
-
强加给某人是多么可怕的事情!无论如何,这意味着您必须在 Xaml 中指定完整的工具提示模板。