0

我是 Windows Phone 7 开发的新手,对 Silverlight 几乎同样陌生。我有一个带有 DataTemplate、StackPanel 和 TextBlocks 的 ListBox,如下所示:

    <ListBox Height="355" HorizontalAlignment="Left" Margin="6,291,0,0" Name="detailsList" VerticalAlignment="Top" Width="474" Background="#36FFFFFF">
        <ListBox.ItemTemplate>
            <DataTemplate>
                <StackPanel Orientation="Horizontal">
                    <TextBlock Width="50" Text="{Binding Ticker}" />
                    <TextBlock Width="50" Text="{Binding Price}" />
                    <TextBlock Width="50" Text="{Binding GainLoss}" />
                </StackPanel>
            </DataTemplate>
        </ListBox.ItemTemplate>
    </ListBox>

我有一些 C# 代码来填充它:

    var info = new List<StockInfo>();
    info.Add(new StockInfo { Ticker = "C", Price = "5.18", GainLoss = "10" });
    info.Add(new StockInfo { Ticker = "WEN", Price = "4.18", GainLoss = "12" });
    info.Add(new StockInfo { Ticker = "CBB", Price = "5.22", GainLoss = "210" });
    detailsList.ItemsSource = info;

这一切都很好。我的问题是:如何动态地(在运行时)向列表框添加/删除额外的“文本块”?另外,如何将列标题放在列表框上?

4

1 回答 1

2

你真正想要的是一个网格,而不是一个列表框。我经历了在 Windows Phone 7 中显示网格的类似痛苦,好消息是您可以DataGrid从 SilverlightToolkit 使用,坏消息是它没有针对手机进行优化。您将需要查找 SilverlightToolkit 源,复制网格样式并对其进行修改以使其看起来与手机原生。

这是一段时间以来对数据网格的问题的回答。

于 2010-05-03T00:04:24.140 回答