Используйте CustomDrawCell событие, если вы просто хотите, чтобы отобразить ячейку неизменяемые. или Вы также можете использовать CustomColumnDisplayText Event.
Попробуйте это:
private void gridView1_CustomDrawCell(object sender, DevExpress.XtraGrid.Views.Base.RowCellCustomDrawEventArgs e)
{
if (e.Column.FieldName == "Marks")
{
e.DisplayText = (((int)(Convert.ToDecimal(e.CellValue) * 100))).ToString() + "%";
}
}
Другой способ использовать свойство редактора EditFormat и DisplayFormat. и после установки этих свойств добавьте его в GridView колонки: Ref: How to format values shown in the XtraGrid
RepositoryItem textEdit;
private void AddGridRepositoryItem()
{
textEdit = new RepositoryItemTextEdit();
textEdit.AllowHtmlDraw = DevExpress.Utils.DefaultBoolean.True;
textEdit.ReadOnly = true;
gridControl1.RepositoryItems.Add(textEdit);
textEdit.DisplayFormat.FormatType = DevExpress.Utils.FormatType.Numeric;
textEdit.DisplayFormat.FormatString = "p";
gridView1.Columns[0].ColumnEdit = textEdit;
}
Самый простой способ заключается в использовании GridColumn.DisplayFormat собственности.
colPayment.DisplayFormat.FormatType = FormatType.Numeric;
colPayment.DisplayFormat.FormatString = "p0";
Надеется, что это поможет ..
Это именно то, что я искал. +1 для всех ссылок. – Stavros
Nice, и это также позволило мне хранить проценты в виде байта/tinyint - спасибо! В противном случае GridControl не интерпретировал данные так, как я хотел, -> 10 процентов превратились в 1000% :) – Prokurors
Почему же это принятый ответ? – Aron