Slider Class
NuGet: GHIElectronics.TinyCLR.UI
Assembly: GHIElectronics.TinyCLR.UI
Namespace: GHIElectronics.TinyCLR.UI.Controls
Horizontal or vertical value slider with optional tick marks and snap-to intervals. The knob is rendered with the shared Scale9 Button bitmaps so it picks up the theme's surface styling automatically.
public class Slider : ContentControl, IDisposable
Constructors
Slider()
public Slider() : this(0, 0)
Initializes a new slider with default size.
Slider(int width, int height)
public Slider(int width, int height)
Initializes a new slider with the given width and height.
Properties
Alpha
public ushort Alpha { get; set; }
The opacity applied when rendering the knob.
RadiusBorder
public int RadiusBorder { get; set; }
Corner radius in pixels for the Scale9-rendered knob.
Orientation
public Orientation Orientation { get; set; }
Whether the slider is laid out horizontally or vertically.
Minimum
public double Minimum { get; set; }
The minimum value the slider can represent.
Maximum
public double Maximum { get; set; }
The maximum value the slider can represent.
Value
public double Value { get; set; }
The current slider value, clamped between Minimum and Maximum.
KnobSize
public int KnobSize { get; set; }
Knob size along the slide axis (px).
TickInterval
public int TickInterval { get; set; }
Number of tick mark intervals along the track. 0 disables ticks.
SnapInterval
public int SnapInterval { get; set; }
Number of snap stops along the track. 0 disables snap (continuous).
TrackColor
public Media.Color TrackColor { get; set; }
Color used for the track line and tick marks.
Methods
OnRender(DrawingContext dc)
public override void OnRender(DrawingContext dc)
Renders the track, tick marks, and knob for the slider.
OnTouchDown(TouchEventArgs e)
protected override void OnTouchDown(TouchEventArgs e)
Begins dragging the knob when the slider is touched.
OnTouchUp(TouchEventArgs e)
protected override void OnTouchUp(TouchEventArgs e)
Ends knob dragging when the touch is released.
OnTouchMove(TouchEventArgs e)
protected override void OnTouchMove(TouchEventArgs e)
Updates the value as the knob is dragged.
OnButtonDown(ButtonEventArgs e)
protected override void OnButtonDown(ButtonEventArgs e)
Hardware button support: Left/Right step a horizontal slider, Up/Down step a vertical slider. Step size is one snap interval, or 1% of the range when SnapInterval is 0.
Dispose()
public void Dispose()
Releases the knob bitmap resources used by the slider.
Dispose(bool disposing)
protected virtual void Dispose(bool disposing)
Releases the knob bitmap resources used by the slider.
Events
ValueChanged
public event ValueChangedEventHandler ValueChanged
Raised when the slider value changes.