officefileapi-devexpress-dot-spreadsheet-b259ac9d.md
A converter that converts custom objects to cell values and vice versa.
Namespace : DevExpress.Spreadsheet
Assembly : DevExpress.Spreadsheet.v25.2.Core.dll
NuGet Package : DevExpress.Spreadsheet.Core
public interface ICellValueConverter
Public Interface ICellValueConverter
The following members return ICellValueConverter objects:
To convert custom objects to cell values and vise versa, you can apply your own converters.
This example demonstrates how to convert a color object (Color) to a SpreadsheetControl-compatible cell value of the text type (CellValue) that corresponds to the color name. To do this, create a custom converter class that implements the ICellValueConverter interface, and call the CellValue.FromObject method with the color object and custom converter passed as parameters.
Worksheet worksheet = workbook.Worksheets[0];
Cell cell = worksheet.Cells["A1"];
cell.FillColor = Color.Orange;
cell.Value = CellValue.FromObject(cell.FillColor, new ColorToNameConverter());
// ...
class ColorToNameConverter : ICellValueConverter {
object ICellValueConverter.ConvertToObject(CellValue value) {
return null;
}
CellValue ICellValueConverter.TryConvertFromObject(object value) {
bool isColor = value.GetType() == typeof(Color);
if (!isColor)
return null;
return ((Color)value).Name;
}
}
Dim worksheet As Worksheet = workbook.Worksheets(0)
Dim cell As Cell = worksheet.Cells("A1")
cell.FillColor = Color.Orange
cell.Value = CellValue.FromObject(cell.FillColor, New ColorToNameConverter())
' ...
Private Class ColorToNameConverter
Implements ICellValueConverter
Private Function ICellValueConverter_ConvertToObject(ByVal value As CellValue) As Object Implements ICellValueConverter.ConvertToObject
Return Nothing
End Function
Private Function ICellValueConverter_TryConvertFromObject(ByVal value As Object) As CellValue Implements ICellValueConverter.TryConvertFromObject
Dim isColor As Boolean = value.GetType() Is GetType(Color)
If Not isColor Then
Return Nothing
End If
Return DirectCast(value, Color).Name
End Function
End Class
See Also