C# WPF绑定库和模型

C# WPF绑定库和模型,c#,wpf,data-binding,C#,Wpf,Data Binding,我有两个类,Handy(它是一个带有ID、姓名和年份的模型)和一个HandyRepository 我的HandyRepository如下所示: private IList<Handy> list = new List<Handy>(new Handy[] { new Handy{ ID=1, Name="Nokia ", Jahr=1999}, new Handy{ ID=2, Name="HTC m", Jahr=2333},

我有两个类,
Handy
(它是一个带有ID、姓名和年份的模型)和一个
HandyRepository

我的HandyRepository如下所示:

 private IList<Handy> list = new List<Handy>(new Handy[] {
        new Handy{ ID=1, Name="Nokia ", Jahr=1999},
        new Handy{ ID=2, Name="HTC m", Jahr=2333},
        new Handy{ ID=3, Name="Samsung", Jahr=2134} });


    public IEnumerable<Handy> GetList()
    {
        return this.list;
    }
private IList list=new list(new Handy[]{
新Handy{ID=1,Name=“Nokia”,Jahr=1999},
新Handy{ID=2,Name=“HTC m”,Jahr=2333},
新Handy{ID=3,Name=“Samsung”,Jahr=2134});
公共IEnumerable GetList()
{
返回此.list;
}
现在,我希望将该数据保存到wpf应用程序中的列表框中,而不在代码隐藏文件中编写任何代码

我的尝试:

    xmlns:local="clr-namespace:Handy"
    Title="MainWindow" Height="350" Width="525">
<Grid>
    <Grid.DataContext>
        <local:Handy></local:Handy>
    </Grid.DataContext>

    <ListBox Name="lbBinding" ItemsSource="{Binding Name}"></ListBox>
</Grid>
xmlns:local=“clr命名空间:Handy”
Title=“MainWindow”Height=“350”Width=“525”>

那不行。我在推理上有基本的错误吗?如何解决此问题?

您尚未将ItemsSource绑定到实际集合。首先,您需要创建一个集合,并为其提供一个可以识别该集合的密钥:

<x:Array x:Key="HandyList" Type="{x:Type local:Handy}">
    <local:Handy Name="Nokia " Jahr="1999" ID="1" />
    <local:Handy Name="HTC m", Jahr="2333" ID="2" />
</x:Array>

然后可以将XAML中的ItemsSource绑定到{Binding Path=HandyList}。当然,不要忘记构建列表并填充它…

您还没有将ItemsSource绑定到实际的集合。首先,您需要创建一个集合,并为其提供一个可以识别该集合的密钥:

<x:Array x:Key="HandyList" Type="{x:Type local:Handy}">
    <local:Handy Name="Nokia " Jahr="1999" ID="1" />
    <local:Handy Name="HTC m", Jahr="2333" ID="2" />
</x:Array>

然后可以将XAML中的ItemsSource绑定到{Binding Path=HandyList}。当然,别忘了构建列表并填充它……

只是看一下而已!ItemsSource属性告诉我{“'Handy.HandyModel”不是属性'ItemsSource'的有效值。}Woops!很抱歉,我没有注意到资源是一个单独的Handy,而不是它的集合,ListBox至少需要绑定一个IEnumerable。我会做一些编辑。只是,看样子!ItemsSource属性告诉我{“'Handy.HandyModel”不是属性'ItemsSource'的有效值。}Woops!很抱歉,我没有注意到资源是一个单独的Handy,而不是它的集合,ListBox至少需要绑定一个IEnumerable。我会做一些编辑。
<ListBox ItemsSource="{StaticResource HandyList}"
         Name="lbBinding"
         DisplayMemberPath="Name" />
public List<Handy> HandyList { get; set; }
DataContext = this;