WPF中的差异源和数据上下文

时间:2019-01-01 16:36:17

标签: wpf xaml binding

DataContext和Source似乎与我非常相似。

  • 优缺点是什么?
  • 何时使用哪个?

附带来源:

<TextBlock Text="{Binding Name, Source={StaticResource Person}}" />

或者使用DataContext解决方案:

public partial class DataContextSample : Window
    {
      public string Name {get; set;}
        public DataContextSample()
        {
            InitializeComponent();
            this.DataContext = this;
        }
    }

<TextBlock Text="{Binding Name}" />

1 个答案:

答案 0 :(得分:0)

没有指定源的绑定将绑定到元素的DataContext属性。

DataContext是一个特殊属性,如果未设置,将被重定向到元素的父级的DataContext。这样可以防止出现重复的xaml(始终在每个绑定中设置Source),并使所有绑定都是相对的,因此无需更改绑定中的所有Sources即可更轻松地更改UI。