我是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;
一切正常。我的问题是:如何动态地(在运行时)向列表框中添加/删除其他“文本块”?另外,如何将列标题放在列表框中?
答案 0 :(得分:2)
您真正想要的是网格,而不是列表框。我遇到了在Windows Phone 7中显示网格的痛苦,好消息是你可以使用SilverlightToolkit中的DataGrid
,坏消息是它没有针对手机进行优化。您需要查找SilverlightToolkit源代码,复制网格样式并将其修改为手机原生。
以下是关于数据网格的问题的my answer。