Skip to main content

VGridControlBase.CustomizationForm Property

Provides access to the Customization Form.

Namespace: DevExpress.XtraVerticalGrid

Assembly: DevExpress.XtraVerticalGrid.v24.1.dll

NuGet Packages: DevExpress.Win.Navigation, DevExpress.Win.VerticalGrid


public VGridCustomizationFormBase CustomizationForm { get; }

Property Value



The Customization Form allows end-users to hide rows and make them visible again. Use the CustomizationForm property to adjust the form’s settings. This property’s return value is a Form descendant. You can change the form’s caption, assign a context menu to it, change its position, etc.


The Customization Form is recreated with default settings each time it is displayed. All changes made are lost between hiding the form and showing it again. You need to handle the VGridControlBase.ShowCustomizationForm event to apply the desired changes each time the Customization Form is shown.

Refer to the following help topic for more information: Customization Form - Vertical Grid.


The following sample assigns a context menu to the Customization Form each time it is shown. The context menu contains a single item used to restore hidden rows.


using DevExpress.XtraVerticalGrid.Rows;

private void btnShowCustomizationForm_Click(object sender, EventArgs e) {
   // Show Customization Form.

ContextMenu menu = null;
private void vGridControl1_ShowCustomizationForm(object sender, System.EventArgs e) {
   menu = new ContextMenu(new MenuItem[] {new MenuItem("Restore All")});
   menu.MenuItems[0].Click += new EventHandler(menuItem1_Click);
   vGridControl1.CustomizationForm.ContextMenu = menu;

private void vGridControl1_HideCustomizationForm(object sender, System.EventArgs e) {
   if (menu == null) return;
   menu.MenuItems[0].Click -= new EventHandler(menuItem1_Click);
   menu = null;

private void menuItem1_Click(object sender, System.EventArgs e) {
   RowOperationVisible RowOperatVisible = new RowOperationVisible();

public class RowOperationVisible : RowOperation {
   public RowOperationVisible() {}
   public override void Execute(BaseRow row) {
      if (row.Visible == false && row.OptionsRow.AllowMoveToCustomizationForm) 
          row.Visible = true;
See Also