如何在Silverlight / WPF中指定要绑定的默认属性?

时间:2010-08-03 23:39:32

标签: c# wpf silverlight data-binding

有没有办法在XAML中指定带有数据绑定的Path引用的默认属性?我希望能够做一些类似于CollectionViewSource在使用Binding时所做的事情。

当您绑定到XAML中的CollectionViewSource时,它会自动连接View属性的路径。

例如:{Binding Source = {StaticResource cvs}}与{Binding Path = View,Source = {StaticResource cvs}}

相同

是否可以在自定义DependencyObject或POCO中执行相同的操作?

1 个答案:

答案 0 :(得分:0)

将您的属性设置为DataContext。假设你有这门课程:

public class Person
{
   public string Name { get; set; }

   public Person(string name)
   {
      this.Name = name;
   }
}

您可以将其设置为DataContext,例如在Window中这样说:

this.DataContext = new Person("Carlo");

在窗口中你有一个标签,你就这样做了:

<Label Content="{Binding Name}" />

标签将显示“Carlo”。

现在,如果您只想将Name用作绑定,可以在Window:

中执行此操作
Person p = new Person("Carlo");
this.DataContext = p.Name;

这在标签中:

<Label Content="{Binding}" />