ListBox ItemsSource

时间:2012-07-09 14:47:18

标签: wpf silverlight windows-phone-7

我正在做我的第一个Windows Phone 7应用程序。看起来不支持DataGrid。我正在努力寻找解决方法。

我确实有这样的ListBox:

    <ListBox x:Name="myListBox" Grid.Row="3">
        <ListBox.ItemTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition />
                        <ColumnDefinition />
                        <ColumnDefinition />
                    </Grid.ColumnDefinitions>
                    <Image Name="assetImage" Grid.Column="0" />
                    <TextBlock Name="assetId" Grid.Column="1" />
                    <TextBlock Name="market" Grid.Column="2" />
                </Grid>
            </DataTemplate>
        </ListBox.ItemTemplate>
    </ListBox>

如何为这种列表设置ItemsSource?

假设我有List<MyObject> { string uri; string assetid; string market;}

谢谢!

1 个答案:

答案 0 :(得分:2)

这样做(在元素中添加绑定):

<ListBox x:Name="myListBox" Grid.Row="3">
        <ListBox.ItemTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition />
                        <ColumnDefinition />
                        <ColumnDefinition />
                    </Grid.ColumnDefinitions>
                    <Image Source="{Binding uri}" Name="assetImage" Grid.Column="0" />
                    <TextBlock Text="{Binding assetid}"  Name="assetId" Grid.Column="1" />
                    <TextBlock Text="{Binding market}" Name="market" Grid.Column="2" />
                </Grid>
            </DataTemplate>
        </ListBox.ItemTemplate>
    </ListBox>

现在,在要创建绑定的位置添加以下代码:

myListBox.ItemsSource=myObjects;

我认为MyObject是一个以uriassetidmarket作为属性的类,myObjects是一个List<>,其中的项目为类型MyObject