LoopingSelector不显示?

时间:2012-03-27 20:14:32

标签: c# windows-phone-7 xaml

我得到了以下xaml:

           <controls:PanoramaItem Header="overview">

                <Grid>

                    <Grid.ColumnDefinitions>
                        <ColumnDefinition />
                    </Grid.ColumnDefinitions>

                    <Grid.RowDefinitions>
                        <RowDefinition />
                    </Grid.RowDefinitions>

                    <toolkit:LoopingSelector Grid.Column="0" Grid.Row="0" ItemMargin="5" Width="160"  ItemSize="160,105" >
                        <toolkit:LoopingSelector.ItemTemplate>
                            <DataTemplate>
                                <Grid>
                                    <TextBlock Text="{Binding Numbers}" FontSize="15" HorizontalAlignment="Center" VerticalAlignment="Center" />
                                </Grid>
                            </DataTemplate>
                        </toolkit:LoopingSelector.ItemTemplate>
                    </toolkit:LoopingSelector>

                </Grid>

            </controls:PanoramaItem>

其中Numbers看起来像这样:

this.Numbers = new List<int> { 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 };

public List<int> Numbers { get; private set; }

事物构建并运行,但循环选择器似乎不可见......有谁知道为什么我看不到它?

2 个答案:

答案 0 :(得分:1)

您的Numbers列表必须是公开的和属性,才能使数据绑定工作。

答案 1 :(得分:1)

首先您需要将Numbers集合定义为公共属性

public List<int> Numbers
{
    get;
    set;
}

并在类的构造函数中(或通过其他方法)设置此属性的值

Numbers = new List<int>(){ 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 };

其次您需要将Numbers集合绑定到LoopingSelector上的DataSource属性而不是TextBlock。然后,TextBlock的DataContext是集合中的单个整数(项)。

<toolkit:LoopingSelector Grid.Column="0" Grid.Row="0" ItemMargin="5" Width="160"  ItemSize="160,105" DataSource="{Binding Numbers}">
     <toolkit:LoopingSelector.ItemTemplate>
         <DataTemplate>
             <Grid>
                <TextBlock Text="{Binding .}" FontSize="15" HorizontalAlignment="Center" VerticalAlignment="Center" />
              </Grid>
         </DataTemplate>
      </toolkit:LoopingSelector.ItemTemplate>
 </toolkit:LoopingSelector>