We use cookies to give you the best experience on our website. If you continue to browse, then you agree to our privacy policy and cookie policy. (Last updated on: November 16, 2018).
Unfortunately, activation email could not send to your email. Please try again.
Syncfusion Feedback

How to draw a custom caption for docking windows in WinForms Docking Manager?

Platform: WinForms |
Control: DockingManager |
Published Date: April 30, 2011 |
Last Revised Date: December 9, 2019

Draw a custom caption

The DockingManager has a ProvideGraphicsItems event that can be handled for custom rendering the docking window caption area. This event is fired whenever a docking window’s caption needs to be painted and the ProvideGraphicsItemsEventArgs event argument provides the control being drawn and allows you to specify the new set of graphics objects to used.

Handle the DockingManager.ProvideGraphicsItems event and specify custom drawing objects for the active and inactive docking windows.

C#

private void dockingManager1_ProvideGraphicsItems(object sender, Syncfusion.Windows.Forms.Tools. ProvideGraphicsItemsEventArgs arg)
{
   if(arg.IsActiveCaption == true)
   {
      arg.CaptionBackground = new LinearGradientBrush(arg.CaptionBounds, Color.Red, Color.White, (float)0);
      arg.CaptionForeground = Color.Black;
      arg.CaptionFont = new Font("Arial", 10, FontStyle.Bold);
   }
   else
   {
      arg.CaptionBackground = new LinearGradientBrush(arg.CaptionBounds, Color.Blue, Color.White, (float)0);
      arg.CaptionFont = new Font("Arial", 10);
   }
}

 

VB

Private Sub dockingManager1_ProvideGraphicsItems(ByVal sender As Object, ByVal arg As
Syncfusion.Windows.Forms.Tools.ProvideGraphicsItemsEventArgs) Handles
dockingManager1.ProvideGraphicsItems
    If arg.IsActiveCaption = True Then
       arg.CaptionBackground = New LinearGradientBrush(arg.CaptionBounds, Color.Red,
Color.White, CSng(0))
       arg .CaptionForeground = Color.Black
       arg.CaptionFont = New Font("Arial", 10, FontStyle.Bold)
    Else
       arg.CaptionBackground = New LinearGradientBrush(arg.CaptionBounds, Color.Blue,
Color.White, CSng(0))
       arg.CaptionFont = New Font("Arial", 10)
    End If
End Sub

 

Reference link: https://help.syncfusion.com/windowsforms/dockingmanager/docking-events#providegraphicsitems-event

2X faster development

The ultimate WinForms UI toolkit to boost your development speed.
ADD COMMENT
You must log in to leave a comment

Please sign in to access our KB

This page will automatically be redirected to the sign-in page in 10 seconds.

Up arrow icon

Warning Icon You are using an outdated version of Internet Explorer that may not display all features of this and other websites. Upgrade to Internet Explorer 8 or newer for a better experience.Close Icon