Skip to main content
Row

DevExpress v24.2 Update — Your Feedback Matters

Our What's New in v24.2 webpage includes product-specific surveys. Your response to our survey questions will help us measure product satisfaction for features released in this major update and help us refine our plans for our next major release.

Take the survey Not interested

WorksheetExtensions.Import(Worksheet, IEnumerable, Int32, Int32, Boolean, DataImportOptions) Method

Imports data from a collection.

You need a license for the DevExpress Office File API Subscription or DevExpress Universal Subscription to use this method in production code.

Namespace: DevExpress.Spreadsheet

Assembly: DevExpress.Docs.v24.2.dll

NuGet Package: DevExpress.Document.Processor

#Declaration

public static void Import(
    this Worksheet sheet,
    IEnumerable source,
    int firstRowIndex,
    int firstColumnIndex,
    bool isVertical,
    DataImportOptions options
)

#Parameters

Name Type Description
sheet Worksheet

A Worksheet that is the worksheet to which the data is imported.

source IEnumerable

An object that exposes the IEnumerable interface provided by a collection of objects being imported.

firstRowIndex Int32

An integer that is the row index of the start cell in which the imported data will be inserted.

firstColumnIndex Int32

An integer that is the column index of the start cell in which the imported data will be inserted.

isVertical Boolean

true, to insert imported data vertically; otherwise, false

options DataImportOptions

A DataImportOptions object containing data import options, parameters and converter.

#Example

View Example

List<TestObject> list = new List<TestObject>();
list.Add(new TestObject(1, "1", true));
list.Add(new TestObject(2, "2", false));
worksheet.Import(list, 0, 0, new DataSourceImportOptions() { Converter = new TestDataValueConverter() });
class TestDataValueConverter : DevExpress.Spreadsheet.IDataValueConverter
{
    public bool TryConvert(object value, int columnIndex, out DevExpress.Spreadsheet.CellValue result)
    {
        string strValue = value as string;
        if (strValue != null)
        {
            int str2int;
            bool success = Int32.TryParse(strValue, out str2int);
            result = success ? str2int : 0;
            return true;
        }
        Type valueType = value.GetType();
        if (valueType == typeof(int))
            result = (int)value;
        else
            result = null;
        return true;
    }
}
class TestObject
{
    public TestObject(int intValue, string value, bool boolValue)
    {
        this.intValue = intValue;
        this.Value = value;
        this.BoolValue = boolValue;

    }
    public int intValue;
    private int privateValue { get { return 123; } }
    public int IntValue { get { return intValue + privateValue - 123; } }
    public string Value { get; set; }
    public bool BoolValue { get; set; }
    public int this[int index] { get { return index; } }
}
See Also