ASPxGridListEditor.CreateCustomDataItemTemplate Event
Occurs when the GridViewDataColumn.DataItemTemplate is initialized.
Namespace: DevExpress.ExpressApp.Web.Editors.ASPx
Assembly: DevExpress.ExpressApp.Web.v24.1.dll
NuGet Package: DevExpress.ExpressApp.Web
Declaration
public event EventHandler<CreateCustomDataItemTemplateEventArgs> CreateCustomDataItemTemplate
Event Data
The CreateCustomDataItemTemplate event's data class is CreateCustomDataItemTemplateEventArgs. The following properties provide information specific to this event:
Property | Description |
---|---|
CreateDefaultDataItemTemplate | Specifies if the default data item template should be created. |
DataItemTemplateInfoProvider | Gets the object that provides info on the GridViewDataColumn.DataItemTemplate. Inherited from CreateCustomItemTemplateEventArgs. |
Handled | Gets or sets a value that indicates whether the event handler has completely handled the event or whether the system should continue its own processing. Inherited from HandledEventArgs. |
ModelColumn | Gets the Application Model settings of the column. Inherited from CreateCustomItemTemplateEventArgs. |
Template | Specifies a template that is used to display a data cell or edit cell. Inherited from CreateCustomItemTemplateEventArgs. |
Remarks
This event is triggered when the GridViewDataColumn.DataItemTemplate is null (Nothing in VB) and the column does not display “*******“ (see ProtectedContentText). To specify a custom ITemplate, handle this event, pass the custom ITemplate object to the handler’s CreateCustomItemTemplateEventArgs.Template parameter and set the Handled parameter to true. If you set Handled to true and do not initialize Template, the default column behavior will be used (the Object.ToString values will be displayed).
using DevExpress.ExpressApp;
using DevExpress.ExpressApp.Web.Editors.ASPx;
// ...
public class CreateCustomDataItemTemplateController : ObjectViewController<ListView, Person> {
protected override void OnActivated() {
base.OnActivated();
ASPxGridListEditor listEditor = (ASPxGridListEditor)View.Editor;
listEditor.CreateCustomDataItemTemplate += listEditor_CreateCustomDataItemTemplate;
}
private void listEditor_CreateCustomDataItemTemplate(
object sender, CreateCustomDataItemTemplateEventArgs e) {
// ...
e.Handled = true;
}
protected override void OnDeactivated() {
base.OnDeactivated();
ASPxGridListEditor listEditor = (ASPxGridListEditor)View.Editor;
listEditor.CreateCustomDataItemTemplate -= listEditor_CreateCustomDataItemTemplate;
}
}
Important
You should subscribe to this event before the View.ControlsCreated event occurs (e.g., in the overridden OnActivated method of a custom Controller). It is too late to customize columns when the grid control has already been created.