LoopingSelector не показывает? - PullRequest
0 голосов
/ 28 марта 2012

Я получил следующее 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>

где числа выглядят так:

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

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

Эта вещь создается и работает, но циклический селектор кажется невидимым ... Кто-нибудь знает, почему я не вижу его?

Ответы [ 2 ]

1 голос
/ 28 марта 2012

Во-первых вам необходимо определить коллекцию Numbers как публичную собственность

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

и установите значение этого свойства в конструкторе вашего класса (или с помощью другого метода)

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

Во-вторых вам необходимо привязать коллекцию Numbers к свойству DataSource в LoopingSelector, а не к TextBlock. DataContext для TextBlock - это единственное целое число (элемент) в вашей коллекции.

<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>
1 голос
/ 28 марта 2012

Ваш Numbers Список должен быть общедоступным и иметь свойство, чтобы привязка данных работала.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...