کنترل DockPanel در WPF
کنترل DockPanel یک ناحیه به منظور تنظیم موقعیت عناصر فرزند نسبت به یک دیگر ایجاد می کند. با استفاده از این کنترل و خاصیت Dock به راحتی می توانید عناصر فرزند در بالا، پایین، راست یا چپ قرار دهید. با تنظیم خاصتی LastChildFill به True آخرین عنصر فرزند، کل فضای باقی مانده در پنل را می گیرد. در تصویر زیر می توانید سلسله مراتب مربوط به ارث بری کنترل DockPanel را در WPF مشاهده کنید.
مثال
در مثال زیر نحوه اضافه کردن عناصر فرزند به یک DockPanel نشان داده شده است. در این مثال تعدادی کنترل Button به پنل اضافه شده است. محتوای فایل MainWindow.xaml:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | <Window x:Class = "WPFDockPanel.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:WPFDockPanel" mc:Ignorable = "d" Title = "MainWindow" Height = "350" Width = "604"> <Grid> <DockPanel LastChildFill = "True"> <Button Content = "Top" DockPanel.Dock = "Top" Click = "Click_Me" /> <Button Content = "Bottom" DockPanel.Dock = "Bottom" Click = "Click_Me" /> <Button Content = "Left" Click = "Click_Me" /> <Button Content = "Right" DockPanel.Dock = "Right" Click = "Click_Me" /> <Button Content = "Center" Click = "Click_Me" /> </DockPanel> </Grid> </Window> |
محتوای فایل MainWindow.xaml.cs:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | using System.Windows; using System.Windows.Controls; namespace WPFDockPanel { /// <summary> /// Interaction logic for MainWindow.xaml /// </summary> public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); } private void Click_Me(object sender, RoutedEventArgs e) { Button btn = sender as Button; string str = btn.Content.ToString() + " button clicked"; MessageBox.Show(str); } } } |
زمانی که مثال فوق را کامپایل و اجرا کنید، خروجی زیر را تولید خواهد کرد:
در مثال فوق اگر بر روی هر کدام از دکمه ها کلیک شود، پیامی به کاربر نمایش داده خواهد شود. برای مثال اگر بر روی دکمه وسط کلیک کنیم، پیام زیر نمایش داده می شود:
هیچ نظری ثبت نشده است