Skip to main content

GridColumnDataEventArgs.IsGetData Property

Gets whether you should provide data for the currently processed cell.

Namespace: DevExpress.Mobile.DataGrid

Assembly: DevExpress.Mobile.Grid.v18.2.dll

Declaration

public bool IsGetData { get; }

Property Value

Type Description
Boolean

true if you need to provide data for the currently processed cell, otherwise false.

Remarks

Important

This documentation topic describes legacy technology. We no longer develop new functionality for the GridControl and suggest that you use the new DataGridView control instead.

If the IsGetData property returns true (and consequently the GridColumnDataEventArgs.IsSetData property is set to false) the data for the cell currently being processed should be supplied via the event handler. To do this, assign a required value (for example, it can be calculated based on values of other columns in the current row) to the event’s GridColumnDataEventArgs.Value parameter. The GridColumnDataEventArgs.RowData property can be used to identify the currently processed row. The current unbound column is identified by the GridColumnDataEventArgs.Column property.

If the IsGetData property is set to false (and consequently the GridColumnDataEventArgs.IsSetData property is set to true) the GridColumnDataEventArgs.Value parameter identifies the value which has been modified for the current cell from the grid. It should be saved to your data source by the event handler.

Example

Assume that the GridControl instance is bound to a collection of orders. Each order has the “Product”, “UnitPrice”and “Quantity” fields. The example below shows how to add an unbound column to the grid to display the amount of each order according to the expression: UnitPrice*Quantity.

The result is displayed below:

GridControl_CustomUnboundColumnData

// Returns the total for a specific row.
decimal getTotalValue(GridControl grid, int rowHandle) {
    decimal unitPrice = Convert.ToDecimal(grid.GetCellValue(rowHandle, "Product.UnitPrice"));
    decimal quantity = Convert.ToDecimal(grid.GetCellValue(rowHandle, "Quantity"));
    return unitPrice * quantity;
}

// Provides data for the Total column.
void OnCustomUnboundColumnData(object sender, GridColumnDataEventArgs e) {
    if (e.Column.FieldName == "Total" && e.IsGetData)
        e.Value = getTotalValue (e.Source, e.RowData.RowHandle);
}

// Customizes the appearance settings.
void OnCustomizeCell(CustomizeCellEventArgs e) {
if (e.FieldName == "Total") {
        e.BackgroundColor = Color.FromRgb(247, 240, 213);
        e.Handled = true;
    }
}
See Also