A View Item can be related to the object that the parent Detail View presents. For instance, the PropertyEditor, being the ViewItem class' descendant, represents the properties of the object presented by the Detail View.
Displays a control specified by the IModelControlDetailItem.ControlTypeName property of the Application Model's corresponding ControlDetailItem node. So, you can specify a control (Windows Forms or ASP.NET) that will be displayed in a UI. This View Item type is declared in the DevExpress.ExpressApp.dll assembly and is UI independent.
Displays a control bound to a property of the current View's object. There are multiple property editor types in the eXpressApp Framework. They are intended for different data types, and therefore use different controls.
To implement a custom View Item, inherit from the ViewItem class. The following protected members that are not described in the documentation can be overridden:
Called by the ViewItem.CreateControl method. You should return the control that will represent your View Item in a UI.
Called by the ViewItem.SaveModel method. You can override it to save the settings of a View Item and its control to the Application Model. This allows display of the View Item in the same manner as it was before it was recreated.
Called by the ViewItem.Dispose method. Override it if you need to dispose custom allocated resources.
OnCurrentObjectChanging and OnCurrentObjectChanged
A custom View Item should be implemented in a module project and decorated with the ViewItemAttribute. In this instance, it will be loaded to the Application Model, which means that you will be able to use it in a UI. Additionally, the module should be UI-specific, because the View Item creates a UI-specific control.