none
如何使用XAML绑定页面后台属性? RRS feed

  • 问题

  • 页面后台代码有属性:        Person person = new Person();
    在XAML中如何绑定person的Name属性? <TextBlock x:Name="txtName" Text="{Binding Name}" />
    Person为:
    public class Person : INotifyPropertyChanged 
        {
            private string _name;
            public string Name
            {
                get
                {
                    return _name;
                }
                set
                {
                    _name = value;
                    if (PropertyChanged != null)
                    {
                        PropertyChanged(this, new PropertyChangedEventArgs("Name"));  }
                }
            }

            public event PropertyChangedEventHandler PropertyChanged;
        }
    2010年6月3日 8:43

答案

  •      使用:xmlns:local="clr-namespace:WpfApplication1"
      <TextBlock x:Name="txtName" Text="{Binding Path=person.Name, RelativeSource={RelativeSource AncestorType={x:Type local:MainWindow}}, Mode=OneWay}" />
    2010年6月3日 9:12