Back to Devexpress

VGridControlBase.ShowCustomizationForm Event

windowsforms-devexpress-dot-xtraverticalgrid-dot-vgridcontrolbase-03acbc95.md

latest5.1 KB
Original Source

VGridControlBase.ShowCustomizationForm Event

Fires after the Customization Form has been invoked.

Namespace : DevExpress.XtraVerticalGrid

Assembly : DevExpress.XtraVerticalGrid.v25.2.dll

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

Declaration

csharp
public event EventHandler ShowCustomizationForm
vb
Public Event ShowCustomizationForm As EventHandler

Event Data

The ShowCustomizationForm event's data class is EventArgs.

Remarks

Handle the ShowCustomizationForm event to respond to the Customization Form’s activation. This event can also be used to initialize the Customization Form. This may be required when you need to assign a context menu to the form or change other settings. The form can be accessed via the VGridControlBase.CustomizationForm property.

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

Example

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.

csharp
using DevExpress.XtraVerticalGrid.Rows;
//...

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

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.Dispose();
   menu = null;
}

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

public class RowOperationVisible : RowOperation {
   public RowOperationVisible() {}
   public override void Execute(BaseRow row) {
      if (row.Visible == false && row.OptionsRow.AllowMoveToCustomizationForm) 
          row.Visible = true;
   }
}
vb
Imports DevExpress.XtraVerticalGrid.Rows
' ...

Private Sub BtnShowCustomizationForm_Click(sender As Object, e As EventArgs) Handles BtnShowCustomizationForm.Click
    ' Show Customization Form.
    VGridControl1.ShowCustomization()
End Sub

Dim _menu As ContextMenu = Nothing
Private Sub VGridControl1_ShowCustomizationForm(ByVal sender As Object, _
ByVal e As System.EventArgs) Handles VGridControl1.ShowCustomizationForm
   _menu = New ContextMenu(New MenuItem() {New MenuItem("Restore All")})
   AddHandler _menu.MenuItems(0).Click, New EventHandler(AddressOf menuItem1_Click)
   VGridControl1.CustomizationForm.ContextMenu = _menu
End Sub

Private Sub VGridControl1_HideCustomizationForm(ByVal sender As Object, _
ByVal e As System.EventArgs) Handles VGridControl1.HideCustomizationForm
   If _menu Is Nothing Then
      Exit Sub
   End If
   RemoveHandler _menu.MenuItems(0).Click, New EventHandler(AddressOf menuItem1_Click)
   _menu.Dispose()
   _menu = Nothing
End Sub

Private Sub menuItem1_Click(ByVal sender As Object, ByVal e As System.EventArgs)
   Dim RowOperatVisible As RowOperationVisible = New RowOperationVisible()
   VGridControl1.RowsIterator.DoOperation(RowOperatVisible)
End Sub

Public Class RowOperationVisible
   Inherits RowOperation
   Public Sub New()
   End Sub

   Public Overrides Sub Execute(ByVal row As BaseRow)
      If row.Visible = False And row.OptionsRow.AllowMoveToCustomizationForm Then
         row.Visible = True
      End If
   End Sub
End Class

See Also

CustomizationForm

HideCustomizationForm

ShowCustomization

VGridControlBase Class

VGridControlBase Members

DevExpress.XtraVerticalGrid Namespace