将数据添加到DataTemplatev - XAML / C#

时间:2015-03-26 08:26:36

标签: c# xaml listview datatemplate

我有这段代码:

 <HubSection IsHeaderInteractive="True" x:Uid="Section3Header" Header="My Groups" Padding="40,40,40,32">
                <DataTemplate>
                    <ListView x:Name="List" Grid.Row="6" Margin="40,20,40,10" HorizontalAlignment="Stretch" Foreground="White">
                        <ListView.ItemTemplate>
                            <DataTemplate>
                                <StackPanel Orientation="Horizontal" Width="220" Height="60" Background="#FF729FD4">
                                    <Border Background="#66727272" Width="40" Height="40" Margin="10">
                                        <Image Source="/SampleImage.png" Height="32" Width="32" Stretch="UniformToFill"/>
                                    </Border>
                                    <StackPanel Orientation="Vertical" VerticalAlignment="Center">
                                        <TextBlock Margin="10,0,0,0" Width="170" Height="20" TextTrimming="WordEllipsis"/>
                                    </StackPanel>
                                </StackPanel>
                            </DataTemplate>
                        </ListView.ItemTemplate>

                    </ListView>
                </DataTemplate>
            </HubSection>

我的问题非常基本: 我需要用该代码创建一个listview,并且在每个listview项中需要有一个我通过websrvice获得的数据(类型是字符串)。

我的问题是如何将此数据填充到DataTemplate?

感谢。

1 个答案:

答案 0 :(得分:0)

我觉得你错过了一些东西。 datatemplate用于定义ItemsControl项目的视觉外观(例如ListView)。

在你的情况下,ListView是另一个datatemplate的一部分,有些情况是有意义的(父子显示),但我不认为这是你想要的。 因此,在您的情况下,您只需要删除外部数据窗口,只需在代码中为ListView分配项目列表。

如果确实需要outer-datetemplate(我不熟悉HubSection),那么ListView是datatemplate的一部分,您需要将datatemplate类型的属性绑定到ListView的Items集合。 类似的东西:

<ListView Items={Binding YourListProperty} ... >