Siticone Logo
Siticone UI
DOCS
v2025.12.15
Docs Vertical 6 RangeSlider

Siticone V6RangeSlider

The SiticoneV6RangeSlider is an advanced, vertically oriented multi-thumb slider designed for specialized range selection scenarios. It supports six independent thumbs, allowing users to define multiple complex ranges (e.g., minimum, low-target, target, high-target, max-warning, maximum) within a single control. It features smooth animations, extensive theming, and robust input support.

Values & Ranges

Control the positions of the six independent thumbs and the overall range of the slider.

Property Type Description & Usage Example
Minimum int slider.Minimum = 0; The lowest possible value for the slider track.
Maximum int slider.Maximum = 100; The highest possible value for the slider track.
Value int slider.Value = 10; The position of the 1st (bottom-most) thumb.
Value2 int slider.Value2 = 25; The position of the 2nd thumb. Constrained between Value1 and Value3.
Value3 int slider.Value3 = 40; The position of the 3rd thumb. Constrained between Value2 and Value4.
Value4 int slider.Value4 = 60; The position of the 4th thumb. Constrained between Value3 and Value5.
Value5 int slider.Value5 = 75; The position of the 5th thumb. Constrained between Value4 and Value6.
Value6 int slider.Value6 = 90; The position of the 6th (top-most) thumb.

Appearance & Styling

Customize the visual elements including track colors, multiple fill gradients, and thumb styles.

Property Type Description & Usage Example
TrackColor Color slider.TrackColor = Color.LightGray; The background color of the unfilled slider track.
FillColor Color slider.FillColor = Color.DodgerBlue; The fill color between Thumb 1 and Thumb 2.
FillColor2 Color slider.FillColor2 = Color.Orange; The fill color between Thumb 3 and Thumb 4.
FillColor3 Color slider.FillColor3 = Color.Green; The fill color between Thumb 5 and Thumb 6.
ThumbColor Color slider.ThumbColor = Color.White; The default color of the slider handles (thumbs).
ThumbHoverColor Color slider.ThumbHoverColor = Color.Cyan; The color of a thumb when the mouse hovers over it.
ThumbAnimation ThumbAnimation slider.ThumbAnimation = ThumbAnimation.Blink; Enables visual effects for thumbs: Normal, Blink (pulsing opacity), or ColorTransition (cycles colors).

Interaction & Behavior

Configure how users interact with the slider via mouse and keyboard.

Property Type Description & Usage Example
IsReadOnly bool slider.IsReadOnly = true; If true, prevents the user from changing values. Visuals update to a "disabled" state.
SmallChange int slider.SmallChange = 1; The increment when using arrow keys.
LargeChange int slider.LargeChange = 10; The increment when using PageUp/PageDown keys.
MouseWheelEnabled bool slider.MouseWheelEnabled = true; Allows changing the hovered thumb value using the mouse wheel.
CanShake bool slider.CanShake = true; If true, the slider shakes visually when a user tries to interact with it in ReadOnly mode.

Designer & Smart Tags

The control includes a rich Smart Tag panel for rapid configuration.

Feature Description
Theme Presets Instantly apply color schemes like "Ocean Sunset", "Rainbow", "Forest", "Royal", and many more via the designer menu.
Quick Actions Shortcuts to set common ranges (0-100, Bipolar -100 to 100) or reset defaults.
Copy/Paste Settings Copy the entire visual configuration of one slider and paste it onto another to ensure UI consistency.

Detailed Usage Examples

Example 1: Complex Temperature Controller

Using the slider to set multiple temperature zones: Freeze, Cool, Comfort, Warm, Hot, and Danger.

C# - Temperature Zones
private void InitializeMultiZoneThermostat()
{
    var slider = new SiticoneV6RangeSlider();
    slider.Minimum = -20;
    slider.Maximum = 120;
    slider.Height = 400;
    
                // Set initial zones
    slider.Value = 0;     // Freeze Limit
    slider.Value2 = 18;   // Cool Limit
    slider.Value3 = 24;   // Comfort Low
    slider.Value4 = 30;   // Comfort High
    slider.Value5 = 45;   // Warm Limit
    slider.Value6 = 90;   // Danger Limit
    
                // Visuals
    slider.FillColor = Color.LightBlue;  // Cold range
    slider.FillColor2 = Color.LightGreen; // Comfort range
    slider.FillColor3 = Color.OrangeRed; // Hot range
    
    slider.RangeValueChanged += (s, e) => 
    {
                Console.WriteLine($"Comfort Zone: {e.NewValue3}°C - {e.NewValue4}°C");
    };
    
    this.Controls.Add(slider);
}

Example 2: Advanced Data Filtering

A vertical slider used to filter data points across multiple statistical percentiles (e.g., 10th, 25th, 50th, 75th, 90th).

C# - Statistical Filter
private void SetupStatisticalSlider()
{
    var statsSlider = new SiticoneV6RangeSlider();
    statsSlider.Height = 350;
    
                // Colors to represent data density
    statsSlider.TrackColor = Color.WhiteSmoke;
    statsSlider.FillColor = Color.LightGray; // Lower quantile
    statsSlider.FillColor2 = Color.DodgerBlue; // Median range
    statsSlider.FillColor3 = Color.LightGray; // Upper quantile
    
                // Enable tooltips on hover (custom implementation)
    statsSlider.RangeValueChanged += (s, e) =>
    {
                UpdateChartRegions(e.NewValue2, e.NewValue3, e.NewValue4, e.NewValue5);
    };
    
    this.Controls.Add(statsSlider);
}

Example 3: Read-Only System Monitor

Using the slider as a complex gauge to display multiple system metrics (CPU, RAM, Disk, Net, GPU, Temp) simultaneously on a single track.

C# - System Gauge
private void UpdateSystemMetrics(int[] metrics)
{
                // metrics array: [cpu, ram, disk, net, gpu, temp]
    monitorSlider.IsReadOnly = true;
    
                // Update values programmatically
    monitorSlider.Value = metrics[0];
    monitorSlider.Value2 = metrics[1];
    monitorSlider.Value3 = metrics[2];
    monitorSlider.Value4 = metrics[3];
    monitorSlider.Value5 = metrics[4];
    monitorSlider.Value6 = metrics[5];
    
                // Dynamic coloring based on critical threshold (e.g., Temp > 85)
    if (metrics[5] > 85) monitorSlider.FillColor3 = Color.Red;
    else monitorSlider.FillColor3 = Color.Green;
}