Dependency Property ListBox

Posted by developer on Stack Overflow See other posts from Stack Overflow or by developer
Published on 2010-04-19T18:03:38Z Indexed on 2010/04/19 18:23 UTC
Read the original article Hit count: 307

Filed under:
|

Hi All, I want to use a dependency property, so that my label displays values selected in the listbox. This is just to more clearly understand the working of a dependency property.

<Window x:Class="WpfApplication1.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:WPFToolkit="clr-namespace:Microsoft.Windows.Controls;assembly=WPFToolkit"
    xmlns:local="clr-namespace:WpfApplication1" x:Name="MyWindow"
    Height="200" Width="300" >
<StackPanel>
        <ListBox x:Name="lbColor" Width="248" Height="56" ItemsSource="{Binding TestColor}"/>

        <StackPanel>
            <Label Content="{Binding Path=Test, ElementName=lbColor}" />
        </StackPanel>
    </StackPanel>

</Window>

Code Behind,

namespace WpfApplication1
{
    /// <summary>
    /// Interaction logic for Window1.xaml
    /// </summary>
    public partial class Window1 : Window
    {

        public ObservableCollection<string> TestColor { get; set; }

        public String Test
        {
            get { return (String)GetValue(TestProperty); }
            set { SetValue(TestProperty, value); }
        }

        // Using a DependencyProperty as the backing store for Title.  This enables animation, styling, binding, etc...
        public static readonly DependencyProperty TestProperty =
            DependencyProperty.Register("Test", typeof(String), typeof(ListBox), new UIPropertyMetadata("Test1"));



        public Window1()
        {
            InitializeComponent();
            TestColor = new ObservableCollection<string>();
            DataContext = this;
            TestColor.Add("Red");
            TestColor.Add("Orange");
            TestColor.Add("Yellow");
            TestColor.Add("Green");
            TestColor.Add("Blue");
        }
    }
}

Can anyone explain me how will I accompalish this using a dependency property. Somehow I am very confused with the Dependency Property concept, and I just wanted to see a working example for that.

© Stack Overflow or respective owner

Related posts about wpf

Related posts about c#