Wpf 无法设置ListBox ItemsSource的属性 List[]Postok; 公共列表[]MyProperty { 获取{return Postok;} 设置{Postok=value;} } [数据合同] 公营职位 { [数据成员] 公共字符串_imageSourc{get;set;} [数据成员] 公共字符串_author{get;set;} [数据成员] 公共字符串_maintext{get;set;} [数据成员] 公共字符串_altext{get;set;} [数据成员] 公共字符串_href{get;set;} }

Wpf 无法设置ListBox ItemsSource的属性 List[]Postok; 公共列表[]MyProperty { 获取{return Postok;} 设置{Postok=value;} } [数据合同] 公营职位 { [数据成员] 公共字符串_imageSourc{get;set;} [数据成员] 公共字符串_author{get;set;} [数据成员] 公共字符串_maintext{get;set;} [数据成员] 公共字符串_altext{get;set;} [数据成员] 公共字符串_href{get;set;} },wpf,silverlight,windows-phone-7,Wpf,Silverlight,Windows Phone 7,我想为ListBox设置MyProperty[0]。但它没有显示任何东西。我已经找到了这个问题的答案,但没有找到。如果您知道,请帮助我。您需要为控件或窗体设置数据上下文。您可能会在根上这样做: List<Post>[] Postok; public List<Post>[] MyProperty { get { return Postok; } set { Postok = value; } } [DataContract] public clas

我想为ListBox设置MyProperty[0]。但它没有显示任何东西。我已经找到了这个问题的答案,但没有找到。如果您知道,请帮助我。

您需要为控件或窗体设置
数据上下文。您可能会在根上这样做:

List<Post>[] Postok;

public List<Post>[] MyProperty
{
    get { return Postok; } 
    set { Postok = value; } 
}

[DataContract]
public class Post
{
    [DataMember]
    public string _imageSourc { get; set; }
    [DataMember]
    public string _author { get; set; }
    [DataMember]
    public string _maintext { get; set; }
    [DataMember]
    public string _altext { get; set; }
    [DataMember]
    public string _href { get; set; }
}

<ListBox x:Name="sdemotivalo" ItemsSource="{Binding MyProperty[0]}">
    <ListBox.ItemTemplate>
        <DataTemplate>
            <TextBlock Text="{Binding Path=_imageSourc}" />
        </DataTemplate>
    </ListBox.ItemTemplate>
</ListBox>
上面的第一行告诉表单查看
MyClass
以获取其数据。因此,当您说
ItemsSource=“{Binding MyProperty[0]}”
时,您是说,“查看您绑定到的类实例(
MyClass
)并找到一个名为
MyProperty
”的属性,从这一点上,您可以索引到
MyProperty
,并获得所需的内容


我很好奇为什么你要使用一个列表数组,我不确定我是否见过这个数组。

公共属性的名称是MyProperty,你正在绑定到ListProp。在初始化Postok和赋值的位置张贴代码。

为什么要使用列表数组(=列表列表)?我想你只需要一份清单。。。删除[]可以吗?”因为列表框没有显示任何内容您如何设置
DataContext
?不要尝试直接绑定到
xaml.cs
文件。创建某种类型的类来保存
MyProperty
,并创建该类的实例用作
DataContext
<Grid x:Name="LayoutRoot" DataContext="{Binding MyClass}">
<ListBox x:Name="sdemotivalo" ItemsSource="{Binding MyProperty[0]}" >