Log In
Home
Support
Demos
Documentation
Blogs
Training
Webinars
[Expand]General Information
[Collapse]WinForms Controls
  Prerequisites
 [Expand]What's Installed
 [Expand]Build an Application
 [Expand]Controls and Libraries
 [Expand]Common Features
  Get More Help
 [Collapse]API Reference
  [Expand]DevExpress.DataAccess.UI.Design
  [Expand]DevExpress.DataAccess.UI.EntityFramework
  [Expand]DevExpress.DataAccess.UI.Excel
  [Expand]DevExpress.DataAccess.UI.Localization
  [Expand]DevExpress.DataAccess.UI.ObjectBinding
  [Expand]DevExpress.DataAccess.UI.Sql
  [Expand]DevExpress.DataAccess.UI.Wizard
  [Expand]DevExpress.DataAccess.UI.Wizard.Services
  [Expand]DevExpress.DataAccess.UI.Wizard.Views
  [Expand]DevExpress.DocumentView
  [Expand]DevExpress.DocumentView.Controls
  [Expand]DevExpress.LookAndFeel
  [Expand]DevExpress.LookAndFeel.Helpers
  [Expand]DevExpress.Skins
  [Expand]DevExpress.Snap
  [Expand]DevExpress.Snap.API.Native
  [Expand]DevExpress.Snap.Core
  [Expand]DevExpress.Snap.Core.API
  [Expand]DevExpress.Snap.Core.Fields
  [Expand]DevExpress.Snap.Core.Forms
  [Expand]DevExpress.Snap.Core.Options
  [Expand]DevExpress.Snap.Core.Services
  [Expand]DevExpress.Snap.Extensions
  [Expand]DevExpress.Snap.Extensions.Localization
  [Expand]DevExpress.Snap.Localization
  [Expand]DevExpress.Snap.Options
  [Expand]DevExpress.Snap.Services
  [Expand]DevExpress.Utils
  [Expand]DevExpress.Utils.Animation
  [Expand]DevExpress.Utils.Controls
  [Expand]DevExpress.Utils.Drawing
  [Expand]DevExpress.Utils.Menu
  [Expand]DevExpress.Utils.Taskbar
  [Expand]DevExpress.Utils.Taskbar.Core
  [Expand]DevExpress.Utils.UI.Localization
  [Expand]DevExpress.Utils.VisualEffects
  [Expand]DevExpress.Utils.Win
  [Expand]DevExpress.XtraBars
  [Expand]DevExpress.XtraBars.Alerter
  [Expand]DevExpress.XtraBars.Docking
  [Expand]DevExpress.XtraBars.Docking2010
  [Expand]DevExpress.XtraBars.Docking2010.Customization
  [Expand]DevExpress.XtraBars.Docking2010.Views
  [Expand]DevExpress.XtraBars.Docking2010.Views.NativeMdi
  [Expand]DevExpress.XtraBars.Docking2010.Views.Tabbed
  [Expand]DevExpress.XtraBars.Docking2010.Views.Widget
  [Expand]DevExpress.XtraBars.Docking2010.Views.WindowsUI
  [Expand]DevExpress.XtraBars.Localization
  [Expand]DevExpress.XtraBars.Navigation
  [Expand]DevExpress.XtraBars.Ribbon
  [Expand]DevExpress.XtraBars.Ribbon.Gallery
  [Expand]DevExpress.XtraBars.Ribbon.ViewInfo
  [Expand]DevExpress.XtraBars.ToastNotifications
  [Expand]DevExpress.XtraBars.Utils
  [Expand]DevExpress.XtraBars.WinRTLiveTiles
  [Expand]DevExpress.XtraCharts
  [Expand]DevExpress.XtraCharts.Designer
  [Expand]DevExpress.XtraCharts.Wizard
  [Expand]DevExpress.XtraDataLayout
  [Expand]DevExpress.XtraDiagram
  [Expand]DevExpress.XtraDiagram.Options
  [Expand]DevExpress.XtraEditors
  [Expand]DevExpress.XtraEditors.ButtonPanel
  [Expand]DevExpress.XtraEditors.Calendar
  [Expand]DevExpress.XtraEditors.Camera
  [Expand]DevExpress.XtraEditors.Container
  [Expand]DevExpress.XtraEditors.Controls
  [Expand]DevExpress.XtraEditors.CustomEditor
  [Expand]DevExpress.XtraEditors.DXErrorProvider
  [Expand]DevExpress.XtraEditors.Filtering
  [Expand]DevExpress.XtraEditors.Mask
  [Expand]DevExpress.XtraEditors.Persistent
  [Expand]DevExpress.XtraEditors.Repository
  [Expand]DevExpress.XtraEditors.ViewInfo
  [Expand]DevExpress.XtraFilterEditor
  [Expand]DevExpress.XtraGauges.Presets.Styles
  [Expand]DevExpress.XtraGauges.Win
  [Expand]DevExpress.XtraGauges.Win.Base
  [Expand]DevExpress.XtraGauges.Win.Gauges.Circular
  [Expand]DevExpress.XtraGauges.Win.Gauges.Digital
  [Expand]DevExpress.XtraGauges.Win.Gauges.Linear
  [Expand]DevExpress.XtraGauges.Win.Gauges.State
  [Expand]DevExpress.XtraGrid
  [Expand]DevExpress.XtraGrid.Columns
  [Expand]DevExpress.XtraGrid.EditForm
  [Expand]DevExpress.XtraGrid.FilterEditor
  [Expand]DevExpress.XtraGrid.Localization
  [Expand]DevExpress.XtraGrid.Views.BandedGrid
  [Expand]DevExpress.XtraGrid.Views.BandedGrid.ViewInfo
  [Expand]DevExpress.XtraGrid.Views.Base
  [Expand]DevExpress.XtraGrid.Views.Base.ViewInfo
  [Expand]DevExpress.XtraGrid.Views.Card
  [Expand]DevExpress.XtraGrid.Views.Card.ViewInfo
  [Collapse]DevExpress.XtraGrid.Views.Grid
   [Expand]CalcPreviewTextEventArgs Class
    CalcPreviewTextEventHandler Delegate
   [Expand]CellMergeEventArgs Class
    CellMergeEventHandler Delegate
   [Expand]ColumnHeaderCustomDrawEventArgs Class
    ColumnHeaderCustomDrawEventHandler Delegate
   [Expand]CustomFilterDialogEventArgs Class
    CustomFilterDialogEventHandler Delegate
   [Expand]CustomMasterRowEventArgs Class
    CustomMasterRowEventHandler Delegate
   [Expand]CustomRowCellEditEventArgs Class
    CustomRowCellEditEventHandler Delegate
    DetailExpandButtonMode Enumeration
    DrawFocusRectStyle Enumeration
    EditFormBindingMode Enumeration
    EditFormModifiedAction Enumeration
   [Expand]EditFormPreparedEventArgs Class
    EditFormPreparedEventHandler Delegate
   [Expand]EditFormShowingEventArgs Class
    EditFormShowingEventHandler Delegate
   [Expand]EditFormUserControl Class
   [Expand]EditFormValidateEditorEventArgs Class
   [Expand]FilterItem Class
   [Expand]FilterPopupCheckedListBoxEventArgs Class
    FilterPopupCheckedListBoxEventHandler Delegate
   [Expand]FilterPopupDateEventArgs Class
    FilterPopupDateEventHandler Delegate
   [Expand]FilterPopupEventArgs Class
   [Expand]FilterPopupExcelDataEventArgs Class
    FilterPopupExcelDataEventHandler Delegate
   [Expand]FilterPopupExcelEventArgs Class
    FilterPopupExcelEventHandler Delegate
   [Expand]FilterPopupListBoxEventArgs Class
    FilterPopupListBoxEventHandler Delegate
   [Expand]FooterCellCustomDrawEventArgs Class
    FooterCellCustomDrawEventHandler Delegate
    GridEditingMode Enumeration
   [Expand]GridMenuEventArgs Class
    GridMenuEventHandler Delegate
   [Expand]GridMenuItemClickEventArgs Class
    GridMenuItemClickEventHandler Delegate
    GridMenuType Enumeration
    GridMultiSelectMode Enumeration
   [Expand]GridOptionsBehavior Class
   [Expand]GridOptionsClipboard Class
   [Expand]GridOptionsCustomization Class
   [Expand]GridOptionsDetail Class
   [Expand]GridOptionsEditForm Class
   [Expand]GridOptionsFilter Class
   [Expand]GridOptionsHint Class
   [Expand]GridOptionsMenu Class
   [Expand]GridOptionsNavigation Class
   [Expand]GridOptionsPrint Class
   [Expand]GridOptionsSelection Class
   [Expand]GridOptionsView Class
    GridState Enumeration
   [Collapse]GridView Class
     GridView Members
    [Expand]GridView Constructor
    [Expand]GridView Properties
    [Collapse]GridView Events
      AfterPrintRow Event
      BeforePrintRow Event
      CalcPreviewText Event
      CalcRowHeight Event
      CellMerge Event
      ColumnWidthChanged Event
      CustomColumnGroup Event
      CustomDrawCell Event
      CustomDrawColumnHeader Event
      CustomDrawFooter Event
      CustomDrawFooterCell Event
      CustomDrawGroupPanel Event
      CustomDrawGroupRow Event
      CustomDrawGroupRowCell Event
      CustomDrawRowFooter Event
      CustomDrawRowFooterCell Event
      CustomDrawRowIndicator Event
      CustomDrawRowPreview Event
      CustomRowCellEdit Event
      CustomRowCellEditForEditing Event
      CustomSummaryCalculate Event
      CustomSummaryExists Event
      DragObjectDrop Event
      DragObjectOver Event
      DragObjectStart Event
      EditFormPrepared Event
      EditFormShowing Event
      GetLoadingImage Event
      GetThumbnailImage Event
      GridMenuItemClick Event
      GroupLevelStyle Event
      GroupRowCollapsed Event
      GroupRowCollapsing Event
      GroupRowExpanded Event
      GroupRowExpanding Event
      HideCustomizationForm Event
      LeftCoordChanged Event
      MasterRowCollapsed Event
      MasterRowCollapsing Event
      MasterRowEmpty Event
      MasterRowExpanded Event
      MasterRowExpanding Event
      MasterRowGetChildList Event
      MasterRowGetLevelDefaultView Event
      MasterRowGetRelationCount Event
      MasterRowGetRelationDisplayCaption Event
      MasterRowGetRelationName Event
      MeasurePreviewHeight Event
      PopupMenuShowing Event
      RowCellClick Event
      RowCellStyle Event
      RowClick Event
      RowStyle Event
      ShowCustomizationForm Event
      ShowGridMenu Event
      ShowingPopupEditForm Event
      TopRowChanged Event
    [Expand]GridView Methods
   [Expand]GridViewAppearances Class
   [Expand]GridViewOptionsFind Class
   [Expand]GridViewPrintAppearances Class
    GroupDrawMode Enumeration
    GroupFooterShowMode Enumeration
   [Expand]GroupLevelStyleEventArgs Class
    GroupLevelStyleEventHandler Delegate
   [Expand]InitNewRowEventArgs Class
    InitNewRowEventHandler Delegate
   [Expand]MasterRowCanExpandEventArgs Class
    MasterRowCanExpandEventHandler Delegate
   [Expand]MasterRowEmptyEventArgs Class
    MasterRowEmptyEventHandler Delegate
   [Expand]MasterRowGetChildListEventArgs Class
    MasterRowGetChildListEventHandler Delegate
   [Expand]MasterRowGetLevelDefaultViewEventArgs Class
    MasterRowGetLevelDefaultViewEventHandler Delegate
   [Expand]MasterRowGetRelationCountEventArgs Class
    MasterRowGetRelationCountEventHandler Delegate
   [Expand]MasterRowGetRelationNameEventArgs Class
    MasterRowGetRelationNameEventHandler Delegate
    NewItemRowPosition Enumeration
   [Expand]PopupMenuShowingEventArgs Class
    PopupMenuShowingEventHandler Delegate
   [Expand]RowCellClickEventArgs Class
    RowCellClickEventHandler Delegate
   [Expand]RowCellStyleEventArgs Class
    RowCellStyleEventHandler Delegate
   [Expand]RowClickEventArgs Class
    RowClickEventHandler Delegate
   [Expand]RowHeightEventArgs Class
    RowHeightEventHandler Delegate
   [Expand]RowIndicatorCustomDrawEventArgs Class
    RowIndicatorCustomDrawEventHandler Delegate
   [Expand]RowStyleEventArgs Class
    RowStyleEventHandler Delegate
    RowVisibleState Enumeration
    ScrollStyleFlags Enumeration
  [Expand]DevExpress.XtraGrid.Views.Grid.ViewInfo
  [Expand]DevExpress.XtraGrid.Views.Layout
  [Expand]DevExpress.XtraGrid.Views.Layout.Events
  [Expand]DevExpress.XtraGrid.Views.Layout.ViewInfo
  [Expand]DevExpress.XtraGrid.Views.Printing
  [Expand]DevExpress.XtraGrid.Views.Tile
  [Expand]DevExpress.XtraGrid.Views.WinExplorer
  [Expand]DevExpress.XtraGrid.WinExplorer
  [Expand]DevExpress.XtraLayout
  [Expand]DevExpress.XtraLayout.Customization
  [Expand]DevExpress.XtraLayout.HitInfo
  [Expand]DevExpress.XtraLayout.Localization
  [Expand]DevExpress.XtraLayout.Utils
  [Expand]DevExpress.XtraMap
  [Expand]DevExpress.XtraMap.Printing
  [Expand]DevExpress.XtraNavBar
  [Expand]DevExpress.XtraNavBar.ViewInfo
  [Expand]DevExpress.XtraPdfViewer
  [Expand]DevExpress.XtraPdfViewer.Commands
  [Expand]DevExpress.XtraPdfViewer.Localization
  [Expand]DevExpress.XtraPivotGrid
  [Expand]DevExpress.XtraPivotGrid.Data
  [Expand]DevExpress.XtraPrinting
  [Expand]DevExpress.XtraPrinting.Control
  [Expand]DevExpress.XtraPrinting.Preview
  [Expand]DevExpress.XtraPrintingLinks
  [Expand]DevExpress.XtraReports.UI
  [Expand]DevExpress.XtraRichEdit
  [Expand]DevExpress.XtraRichEdit.Commands
  [Expand]DevExpress.XtraRichEdit.Export
  [Expand]DevExpress.XtraRichEdit.Import
  [Expand]DevExpress.XtraRichEdit.Localization
  [Expand]DevExpress.XtraRichEdit.Menu
  [Expand]DevExpress.XtraScheduler
  [Expand]DevExpress.XtraScheduler.Drawing
  [Expand]DevExpress.XtraScheduler.Printing
  [Expand]DevExpress.XtraScheduler.Reporting
  [Expand]DevExpress.XtraScheduler.Reporting.UI
  [Expand]DevExpress.XtraScheduler.Services
  [Expand]DevExpress.XtraScheduler.Services.Implementation
  [Expand]DevExpress.XtraScheduler.UI
  [Expand]DevExpress.XtraSpellChecker
  [Expand]DevExpress.XtraSpellChecker.Localization
  [Expand]DevExpress.XtraSplashForm
  [Expand]DevExpress.XtraSplashScreen
  [Expand]DevExpress.XtraSpreadsheet
  [Expand]DevExpress.XtraSpreadsheet.Services
  [Expand]DevExpress.XtraTab
  [Expand]DevExpress.XtraTab.Buttons
  [Expand]DevExpress.XtraTab.ViewInfo
  [Expand]DevExpress.XtraTabbedMdi
  [Expand]DevExpress.XtraToolbox
  [Expand]DevExpress.XtraTreeList
  [Expand]DevExpress.XtraTreeList.Columns
  [Expand]DevExpress.XtraTreeList.Data
  [Expand]DevExpress.XtraTreeList.Localization
  [Expand]DevExpress.XtraTreeList.Menu
  [Expand]DevExpress.XtraTreeList.Nodes
  [Expand]DevExpress.XtraTreeList.Nodes.Operations
  [Expand]DevExpress.XtraTreeList.StyleFormatConditions
  [Expand]DevExpress.XtraTreeMap
  [Expand]DevExpress.XtraVerticalGrid
  [Expand]DevExpress.XtraVerticalGrid.Events
  [Expand]DevExpress.XtraVerticalGrid.Localization
  [Expand]DevExpress.XtraVerticalGrid.Rows
  [Expand]DevExpress.XtraWaitForm
  [Expand]DevExpress.XtraWizard
[Expand]ASP.NET Controls and MVC Extensions
[Expand]ASP.NET Bootstrap Controls
[Expand]WPF Controls
[Expand]Xamarin Controls
[Expand]Windows 10 App Controls
[Expand]Document Server
[Expand]Reporting
[Expand]Report Server
[Expand]Dashboard
[Expand]eXpressApp Framework
[Expand]CodeRush
[Expand]Cross-Platform Core Libraries
[Expand]Tools and Utilities
 End-User Documentation

GridView.CustomDrawColumnHeader Event

Enables you to paint column headers manually.

Namespace:DevExpress.XtraGrid.Views.Grid
Assembly:DevExpress.XtraGrid.v17.1.dll

Expanded Syntax

Expanded Event Data

The event handler receives an argument of type ColumnHeaderCustomDrawEventArgs containing data related to this event.

The following ColumnHeaderCustomDrawEventArgs properties provide information specific to this event.
Property Description
Appearance Gets the painted element's appearance settings.
Bounds Returns a value specifying limits for the drawing area.
Cache Gets an object which specifies the storage for the most often used pens, fonts and brushes.
Column Gets the GridColumn whose header is to be drawn. Returns null if an "empty column header" is currently being painted.
Graphics Gets an object used to paint.
Handled Gets or sets a value specifying whether an event was handled and that the default element painting is therefore not required.
Info Gets an object providing information necessary to paint a column header.
Painter Gets the painter object that provides the default element painting mechanism.

Expanded Remarks

The CustomDrawColumnHeader event is raised each time a column header is about to be painted. The column is identified by the ColumnHeaderCustomDrawEventArgs.Column parameter. See the Custom Painting Basics and Custom Painting Scenarios topics for information on using custom draw events.

Note

The control's events designed to change the appearance or rendering of control elements must not be used to update cell values or to modify the control's layout. Any inappropriate operation which causes a layout update, may break the normal control behavior.

Expanded Example

The following code shows how to paint column headers in a custom manner, and then draw the standard filter and sort buttons using the default painting mechanism. To custom paint column headers, the CustomDrawColumnHeader event is handled.

The following image shows the result (the GridControl, and so the sort and filter buttons are painted using the Caramel skin):

Expanded Example

Show Me

A complete sample project is available in the DevExpress Code Examples database at http://www.devexpress.com/example=T360328.

This example demonstrates the use of the CustomDrawColumnHeader event to custom paint column headers. In this example, column headers are painted by default except, for their sort glyphs. Sort glyphs are rendered by images obtained from an image collection (sortGlyphCollection).

The DrawObject method of the CustomDrawObjectEventArgs.Painter parameter is called to paint a column header using the default mechanism. A sort glyph's bounds are cleared before this method is called, and they are restored after the method execution.

Expanded See Also

How would you rate this topic?​​​​​​​