BaseListBoxControl.CustomDrawScroll Event

Allows you to draw custom scrollbars, or highlight specific positions on the scrollbars.

Namespace: DevExpress.XtraEditors

Assembly: DevExpress.XtraEditors.v20.1.dll

Declaration

[DXCategory("Appearance")]
public event EventHandler<ScrollBarCustomDrawEventArgs> CustomDrawScroll
<DXCategory("Appearance")>
Public Event CustomDrawScroll As EventHandler(Of ScrollBarCustomDrawEventArgs)

Event Data

The CustomDrawScroll event's data class is DevExpress.XtraEditors.ScrollBarCustomDrawEventArgs.

Remarks

The CustomDrawScroll event allows you to draw custom scrollbars. The DefaultDraw method draws the default scrollbar. The Handled event argument must be set to true for the event handler to be in effect. The code below draws a custom thumb.


private void listBoxControl1_CustomDrawScroll(object sender, ScrollBarCustomDrawEventArgs e) {
    e.DefaultDraw();
    e.Cache.FillRectangle(e.Cache.GetSolidBrush(Color.White), e.ThumbBounds);
    e.Cache.DrawRectangle(e.Cache.GetPen(Color.Black), e.ThumbBounds);
    e.Handled = true;
}

The following methods allow you to highlight specific positions on the scrollbars (draw custom scrollbar annotations).

  • HighlightPosition—draws a scrollbar annotation at the specified position (see ScrollBarBase.Value);
  • HighlightRegion—draws a scrollbar annotation at the specified positions;
  • ResetHighight—clears the scrollbar annotations created using two previous methods;

Custom scrollbar annotations are drawn even if the Handled event parameter is set to false.


private void listBoxControl1_CustomDrawScroll(object sender, ScrollBarCustomDrawEventArgs e) {
    if (!e.Horizontal) {
        e.HighlightPosition(0, Color.Green, Alignment.Far);
        e.HighlightRegion(10, 10, Color.Blue, Alignment.Center);
    }
}
See Also