protected override void DrawSkinTrackLineCore(TrackBarObjectInfoArgs e, Rectangle bounds) { MultiTrackBarViewInfo viewInfo = e.ViewInfo as MultiTrackBarViewInfo; var trackElement = GetTrack(viewInfo); if (trackElement == null) { return; } var trackElementInfo = new SkinElementInfo(trackElement, bounds); DrawObject(e.Cache, SkinElementPainter.Default, trackElementInfo); if (viewInfo.Item.DrawRanges) { bounds.Y -= trackLineRadius; bounds.Height += trackLineRadius * 2; trackElementInfo.ImageIndex = 1; for (int i = 0; i < viewInfo.Thumbs.Length - 1; i += 2) { int start = viewInfo.Thumbs[i].Position.X; int end = viewInfo.Thumbs[i + 1].Position.X; trackElementInfo.Bounds = new Rectangle(start, bounds.Y, end - start, bounds.Height); DrawObject(e.Cache, SkinElementPainter.Default, trackElementInfo); } } }
public override void DrawTrackLine(TrackBarObjectInfoArgs e) { MultiTrackBarViewInfo viewInfo = e.ViewInfo as MultiTrackBarViewInfo; viewInfo.SetThumbPos(Point.Empty); base.DrawTrackLine(e); }
public override void DrawThumb(TrackBarObjectInfoArgs e) { MultiTrackBarViewInfo viewInfo = e.ViewInfo as MultiTrackBarViewInfo; foreach (var thumb in viewInfo.Thumbs) { viewInfo.SetThumbPos(thumb.Position); base.DrawThumb(e); } }