MVCxGridViewColumnCollection<RowType>.Add<ValueType>(Expression<Func<RowType, ValueType>>, Action<MVCxGridViewColumn<RowType>>) Method
Adds a new column to the collection and allows you to bind this column to a model field via a lambda expression.
Namespace: DevExpress.Web.Mvc
Assembly: DevExpress.Web.Mvc5.v24.1.dll
NuGet Package: DevExpress.Web.Mvc5
Declaration
public MVCxGridViewColumn<RowType> Add<ValueType>(
Expression<Func<RowType, ValueType>> expression,
Action<MVCxGridViewColumn<RowType>> method
)
Parameters
Name | Type | Description |
---|---|---|
expression | Expression<Func<RowType, ValueType>> | Identifies the data model field to which the column is bound. |
method | Action<MVCxGridViewColumn<RowType>> | A delegate method that accepts the created MVCxGridViewColumn<RowType> as a parameter. |
Type Parameters
Name | Description |
---|---|
ValueType | The value type. |
Returns
Type | Description |
---|---|
MVCxGridViewColumn<RowType> | The grid view column. |
Remarks
The following example illustrates how to use model-based properties and lambda expressions to create cell bands:
settings.Columns.Add(m => m.CustomerAddress, c => {
c.Columns.Add(m => m.Country);
c.Columns.Add(m => m.City);
c.Columns.Add(m => m.Street);
});
or …
var cAdress = settings.Columns.Add(m => m.CustomerAddress, c => { c.Caption = "Address"; });
cAdress.Columns.Add(m => m.CustomerAddress.Country);
cAdress.Columns.Add(m => m.CustomerAddress.City);
cAdress.Columns.Add(m => m.CustomerAddress.Street);
… if your model class contains complex properties and you rely on complex properties’ types while using the Columns.Add method:
public class Customer {
public Address CustomerAddress { get; set; }
}
public class Address {
public string Country { get; set; }
public string City { get; set; }
public string Street { get; set; }
}
Breaking Change: T802552: GridView - The new Columns.Add method overload uses model-based properties and lambda expressions to create cell bands