WPF Slider Example (ValueChanged)Use the WPF Slider control with ValueChanged, Value and Maximum.
dot net perls

Slider. A Slider has a minimum and a maximum. It has a button that a user can drag back and forth. And in our C# code, we use the ValueChanged event handler to determine how a slider is being used.

Please begin by creating a WPF project and dragging a Slider to the window. We use the ValueChanged attribute in the XAML. Type "ValueChanged" and press tab. A new event handler in C# code will be created.

In the event handler, we can access the Slider object from the sender. An alternative is to use the RoutedPropertyChangedEventArgs (this is not shown). In the code, we access Value to get a double.

Value This returns a double variable. It can be any value between Minimum (default 0) and Maximum (default 10).


Tip Try setting the Minimum and Maximum properties in your XAML code. These properties can also be set in a C# event handler.

Example markup: XAML
<Window x:Class="WpfApplication13.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="MainWindow" Height="350" Width="525"> <Grid> <Slider HorizontalAlignment="Left" Margin="10,10,0,0" VerticalAlignment="Top" Width="250" ValueChanged="Slider_ValueChanged"/> </Grid> </Window>

Example code: C#
using System.Windows; using System.Windows.Controls; namespace WpfApplication13 { /// <summary> /// Interaction logic for MainWindow.xaml /// </summary> public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); } private void Slider_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e) { // ... Get Slider reference. var slider = sender as Slider; // ... Get Value. double value = slider.Value; // ... Set Window Title. this.Title = "Value: " + value.ToString("0.0") + "/" + slider.Maximum; } } }

When we use the Slider in this program, the Window Title is changed to read "Value: 3.9/10" or something similar. It updates instantly as the Slider is dragged or clicked upon by the user.

Discussion. A Slider is by default horizontal. But in WPF programs, we can rotate the slider in any direction. Simply use the corner boxes on the control in the Visual Studio designer. This can yield a vertical, or even diagonal slider.

Also Often the Minimum and Maximum attributes need to be adjusted. This can be done in the XAML, or a Slider_Loaded event handler.

Summary. This basic example used the Slider control in a WPF program. It used C# code in the Slider_ValueChanged event handler to dynamically apply changes the user interface, as sliding occurred.

© 2007-2021 sam allen. send bug reports to info@dotnetperls.com.