在Metro Apps C#中使用自定义数据资源

时间:2013-03-30 20:19:19

标签: c# parsing xaml microsoft-metro

我是Metro应用程序的新手。我想使用ListView控件显示Image和一些数据。为了那个目的,我搜索并发现我要放置我的自定义数据资源。我有这个:

<DataTemplate x:Key="ImageTextListCollectionTemplate">
    <StackPanel Orientation="Horizontal" Width="500" Height="130">
        <Border Height="110" Width="110" Margin="10,10,0,10">
            <Image Source="/SampleImage.png" Stretch="UniformToFill"/>
        </Border>
        <StackPanel Orientation="Vertical" VerticalAlignment="Top" Margin="0,10,0,0">
            <TextBlock Text="Aellus nec ipsum tempor id laoreet viverra" 
                   Margin="10,0,0,0" Width="350" Height="20" TextTrimming="WordEllipsis" />
            <TextBlock Text="Phasellus faucibus" 
                   Margin="10,2,0,0" Width="350" Height="14" TextTrimming="WordEllipsis" 
                   HorizontalAlignment="Left" FontSize="9" Opacity="0.49"/>
            <TextBlock Text="A Proin leo nulla, scelerisque non congue nec, facilisis a tellus. Sed varius rhoncus metus, et condimentum ipsum luctus ullamcorper." 
                   Margin="10,2,0,0" Width="350" TextTrimming="WordEllipsis" TextWrapping="Wrap"/>
        </StackPanel>
    </StackPanel>
</DataTemplate>

现在到目前为止我能理解,我必须解析它。我已阅读thisthis,但无法理解。假设我没有/很少解析,plz提供了一些有用的链接/解决方案,使我能够理解利用它的科学。 谢谢:))

1 个答案:

答案 0 :(得分:0)

要查看数据,您必须将对象列表绑定到列表视图。

所以说你有这样一个叫做人的课:

class Person{
    string Name{get; set;}
}

例如,在负载的代码隐藏中,您应该执行以下操作:

List<Person> people = getPeople();  // Load your data from somewhere
this.myListView.ItemsSource = people;

在datatemplate中,您可以绑定到以下属性:

<TextBlock Text="{Binding Name}" />