Skip to main content

XlDocumentCustomProperties.Item[String] Property

Gets or sets the specified custom document property by its name.

Namespace: DevExpress.Export.Xl

Assembly: DevExpress.Printing.v23.2.Core.dll

NuGet Package: DevExpress.Printing.Core

Declaration

public XlCustomPropertyValue this[string name] { get; set; }

Parameters

Name Type Description
name String

A string that specifies the name of the custom property to be set or obtained.

Property Value

Type Description
XlCustomPropertyValue

An XlCustomPropertyValue object that is the value of the custom property.

Remarks

To get access to a storage of all user-defined properties specified in a workbook, use the XlDocumentProperties.Custom property. To set an individual custom property with the specified name, use the Item property.

This example demonstrates how to specify the standard and custom document properties for a workbook using the IXlDocument.Properties and XlDocumentProperties.Custom properties, respectively.

Use the IXlDocument.Properties property to access the XlDocumentProperties object. This object provides a set of properties that allow you to specify basic information about a workbook, such as XlDocumentProperties.Title, XlDocumentProperties.Author, XlDocumentProperties.Subject, etc.

The XlDocumentProperties.Custom property allows you to get access to the XlDocumentCustomProperties object, which represents a storage of custom document properties. To set a value of a custom property with the specified name, use the XlDocumentCustomProperties.Item property. You can set a custom property to any object of the String, Double, DateTime or Boolean type. The specified object will be converted to the XlCustomPropertyValue object and assigned to the custom property. To get the type of the data contained in a custom document property, use the XlCustomPropertyValue.Type property.

Note

A complete sample project is available at https://github.com/DevExpress-Examples/excel-export-api-examples

// Create a new document.
using (IXlDocument document = exporter.CreateDocument(stream)) {
    document.Options.Culture = CultureInfo.CurrentCulture;

    // Set the built-in document properties.
    document.Properties.Title = "XL Export API: document properties example";
    document.Properties.Subject = "XL Export API";
    document.Properties.Keywords = "XL Export, document generation";
    document.Properties.Description = "How to set document properties using the XL Export API";
    document.Properties.Category = "Spreadsheet";
    document.Properties.Company = "DevExpress Inc.";

    // Set the custom document properties.
    document.Properties.Custom["Product Suite"] = "XL Export Library";
    document.Properties.Custom["Revision"] = 5;
    document.Properties.Custom["Date Completed"] = DateTime.Now;
    document.Properties.Custom["Published"] = true;

    // Generate data for the document.
    using(IXlSheet sheet = document.CreateSheet()) {
        sheet.SkipRows(1);
        using(IXlRow row = sheet.CreateRow()) {
            row.SkipCells(1);
            using(IXlCell cell = row.CreateCell()) {
                cell.Value = "You can view document properties using the File->Info->Properties->Advanced Properties dialog.";
            }
        }
    }
}
See Also