کنترل Slider در WPF
کنترل Slider به کاربر اجازه می دهد تا در یک رنج مشخص شده مقدار خاصی را با استفاده از یک کنترل Thumb انتخاب کند. در تصویر زیر می توانید سلسله مراتب مربوط به ارث بری کنترل Slider را مشاهده کنید.
خاصیت های پر استفاده
در جدول زیر می توانید خاصیت های پر استفاده مربوط به کنترل Slider را به همراه توضیح مختصری در مورد هر کدام مشاهده کنید
ردیف | توضیحات |
1 | IsDirectionReversed مقدار این خاصیت، جهت افزایش مقدار کنترل را مشخص می کند. |
2 | Orientation به منظور گرفتن یا تنظیم جهت (افقی یا عمودی) کنترل استفاده می شود. |
3 | TickFrequency به منظور گرفتن یا تنظیم فاصله بین هر تیک بر روی کنترل استفاده می شود. |
4 | TickPlacement به منظور گرفتن یا تنظیم موقعیت قرار گیری تیک ها نسبت به Track استفاده می شود. |
مثال
برای درک بهتر یک پروژه WPF به نام WPFSliderControl ایجاد کرده و آن را به شکل زیر تغییر دهید. محتوای فایل MainWindow.xaml:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | <Window x:Class = "WPFSliderControl.MainWindow" xmlns = "http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x = "http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d = "http://schemas.microsoft.com/expression/blend/2008" xmlns:mc = "http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:local = "clr-namespace:WPFSliderControl" mc:Ignorable = "d" Title = "MainWindow" Height = "350" Width = "604"> <StackPanel> <TextBlock Text = "Slider" Margin = "10" /> <Slider x:Name = "slider2" Minimum = "0" Maximum = "100" TickFrequency = "2" TickPlacement = "BottomRight" ValueChanged = "slider2_ValueChanged" Margin = "10"> <Slider.Background> <LinearGradientBrush EndPoint = "0.5,1" StartPoint = "0.5,0"> <GradientStop Color = "Black" Offset = "0" /> <GradientStop Color = "#FFF5DCDC" Offset = "1" /> </LinearGradientBrush> </Slider.Background> </Slider> <TextBlock x:Name = "textBlock1" Margin = "10" Text = "Current value: 0" /> </StackPanel> </Window> |
محتوای فایل MainWindow.xaml.cs:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | using System; using System.Windows; namespace WPFSliderControl { public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); } private void slider2_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e) { int val = Convert.ToInt32(e.NewValue); string msg = String.Format("Current value: {0}", val); this.textBlock1.Text = msg; } } } |
زمانی که مثال فوق را کامپایل و اجرا کنید، خروجی زیر را تولید خواهد کرد:
هیچ نظری ثبت نشده است