How to: Custom Paint the Control's Background

The code below handles the NavBarControl.CustomDrawBackground event to fill the background with a linear gradient brush.

using System.Drawing;

private void navBarControl1_CustomDrawBackground(object sender, CustomDrawObjectEventArgs e) {
    // Get the background bounds.
    Rectangle rect = e.RealBounds;

    // Get a gradient brush and fill the background. 
    Brush backBrush = e.Cache.GetGradientBrush(rect, Color.Pink, Color.LightSkyBlue, LinearGradientMode.Horizontal);
    e.Cache.FillRectangle(backBrush, rect);

    // Prevent the default paint algorithm from being invoked.
    e.Handled = true;