.NET Framework 4.5.2+
.NET Framework 4.5.2+
.NET Standard 2.0+
Row

IDataSourceColumnTypeDetector Interface

Provides the capability to identify the name and type of each column in a data source created from a cell range.

Namespace: DevExpress.Spreadsheet

Assembly: DevExpress.Spreadsheet.v21.2.Core.dll

Declaration

public interface IDataSourceColumnTypeDetector

Remarks

To specify column names and types using your own custom specifics, implement a class with the IDataSourceColumnTypeDetector interface and assign an instance of this class to the RangeDataSourceOptions.DataSourceColumnTypeDetector property of the options object passed to the CellRange.GetDataSource or the WorksheetDataBindingCollection.CreateDataSource method.

Example

class MyColumnDetector : IDataSourceColumnTypeDetector {
    public string GetColumnName(int index, int offset, CellRange range) {
        if (offset > 3) return String.Format("Column{0}", index);
        string[] names = { "City", "Year", "Month", "Temperature" };
        return names[index];
    }

    public Type GetColumnType(int index, int offset, CellRange range) {
        Type defaultType = typeof(string);
        CellValue value = range[0, offset].Value;
        if (value.IsText) return typeof(string);
        if (value.IsBoolean) return typeof(bool);
        if (value.IsDateTime) return typeof(DateTime);
        if (value.IsNumeric) return typeof(double);
        return defaultType;
    }
}

The following code snippets (auto-collected from DevExpress Examples) contain references to the IDataSourceColumnTypeDetector interface.

Note

The algorithm used to collect these code examples remains a work in progress. Accordingly, the links and snippets below may produce inaccurate results. If you encounter an issue with code examples below, please use the feedback form on this page to report the issue.

See Also