【发布时间】:2017-03-08 18:33:52
【问题描述】:
Switching 应用程序使用 DevExpress XtraGrid 并为行/单元格实现自定义颜色和格式。
大部分格式都被正确应用。但是,当应用于十进制 1000 时,格式为 "#,###;(#,###);0" 最终是 1000.0000 而不是 1,000。
gridView.RowCellStyle += CellFormatting;
private void CellFormatting(object sender, RowCellStyleEventArgs e)
{
if (gridView.IsRowSelected(e.RowHandle))
{
e.Appearance.BackColor = SystemColors.Highlight;
e.Appearance.ForeColor = SystemColors.HighlightText;
return;
}
// get cell by its index
var gridRow = gridView.GetRow(e.RowHandle);
TLColumn columnEnum = ((BindableTextBoxColumn)e.Column).ColumnEnum;
// get new format values
T row = (T)gridRow;
e.Column.DisplayFormat.FormatString = row.GetCellFormat(columnEnum);
e.Appearance.BackColor = row.GetCellBackColor(columnEnum);
e.Appearance.ForeColor = row.GetCellColor(columnEnum);
}
【问题讨论】:
标签: winforms devexpress decimal xtragrid displayformat