在wpf中的observerList内绑定属性

在wpf中的observerList内绑定属性,wpf,xaml,mvvm,data-binding,Wpf,Xaml,Mvvm,Data Binding,我正在使用MVVM模式用C#、WPF和XAML编写一个应用程序 在我在线创建了许多示例之后,我尝试绑定到UI的数据没有显示在屏幕上 我的架构是:在MainViewModel中,我有一个来自type family的ObserverList, 在Family类中,我有一个来自Child类型的observer列表, 在儿童班我有一个名字 如何将子名称绑定到TextBlock 我创建的一些示例: 我制作了一个与您的场景相匹配的自定义示例,请看一下 main window.xaml <Window

我正在使用MVVM模式用C#、WPF和XAML编写一个应用程序

在我在线创建了许多示例之后,我尝试绑定到UI的数据没有显示在屏幕上

我的架构是:在MainViewModel中,我有一个来自type family的ObserverList, 在Family类中,我有一个来自Child类型的observer列表, 在儿童班我有一个名字

如何将子名称绑定到TextBlock

我创建的一些示例:


我制作了一个与您的场景相匹配的自定义示例,请看一下

main window.xaml

<Window x:Class="SO.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525">
<Grid>
        <TextBlock Height="30" Text="{Binding Parent.Child.SampleText}" HorizontalAlignment="Center"/>
</Grid>
</Window>
MainViewModel.cs

public class MainViewModel
    {
        private ParentModel _Parent = new ParentModel();

        public ParentModel Parent
        {
            get { return _Parent; }
            set { _Parent = value; }
        }

        public MainViewModel() //Data Load in Constructor
        {
            ChildModel child = new ChildModel();
            child.SampleText = "Hi, I am Child!";
            Parent.Child = child;
        }
    }
public class ParentModel
    {
        private ChildModel _Child = new ChildModel();

        public ChildModel Child
        {
            get { return _Child; }
            set { _Child = value; }
        }

    }
ParentModel.cs

public class MainViewModel
    {
        private ParentModel _Parent = new ParentModel();

        public ParentModel Parent
        {
            get { return _Parent; }
            set { _Parent = value; }
        }

        public MainViewModel() //Data Load in Constructor
        {
            ChildModel child = new ChildModel();
            child.SampleText = "Hi, I am Child!";
            Parent.Child = child;
        }
    }
public class ParentModel
    {
        private ChildModel _Child = new ChildModel();

        public ChildModel Child
        {
            get { return _Child; }
            set { _Child = value; }
        }

    }
ChildModel.cs

public class ChildModel
    {
        private string _SampleText ;

        public string SampleText
        {
            get { return _SampleText; }
            set { _SampleText = value; }
        }

    }
您的eg中的更正: 您的视图和代码是完美的

您没有在要绑定到UI的模型类中添加属性

class MyData
    {
        //public string User { get; set; }
        //public string Password { get; set; }
        public string FirstName { get; set; }
        public string LastName { get; set; }
        public bool IsLecturer { get; set; }
    }

您好,您可以添加
MyData
类吗?我将其添加到
newmydata{FirstName=“John”,LastName=“Smith”,IsLecturer=false}
后面的代码下,但是
public类MyData{public string User{get;set;}public string Password{get;set;}
我想不感谢您的回答和评论,但遗憾的是您没有回答这个问题。你提到了这个例子。请看一下我回答中新增的例子。这对你的情况会有帮助的。谢谢,在我修好它之后,我仍然有绑定问题。。如何将Observer列表中的元素绑定到Observer列表中,正如您在post的第一部分中所看到的,但是如果ParentModal中的属性是Observer列表子项{get;set;},那么xaml代码的外观如何?
public class ChildModel
    {
        private string _SampleText ;

        public string SampleText
        {
            get { return _SampleText; }
            set { _SampleText = value; }
        }

    }
class MyData
    {
        //public string User { get; set; }
        //public string Password { get; set; }
        public string FirstName { get; set; }
        public string LastName { get; set; }
        public bool IsLecturer { get; set; }
    }