Связывание стековой панели в DataTemplate - PullRequest
0 голосов
/ 12 сентября 2011

У меня есть следующий шаблон данных для списка:

<DataTemplate x:Key="MoviesTemplate">
            <StackPanel Orientation="Horizontal">
                <Image Source="{Binding S_Poster}" Height="73" Width="73" VerticalAlignment="Top" Margin="0,10,8,0"/>
                <StackPanel Orientation="Vertical" Width="200">
                    <TextBlock Text="{Binding Name}" FontSize="20"/>
                    <TextBlock Text="{Binding Type}" FontSize="16"/>
                    <TextBlock Text="{Binding Theaters_S}" FontSize="16"/>
                </StackPanel>
                <StackPanel ItemsSource="To be bound to the custom stack"/>
            </StackPanel>
        </DataTemplate> 

Мне нужно связать стек "StackPanel ItemsSource =" Для привязки к пользовательскому стеку " к панели стекаопределить в C # код с именем "Stack_PIC" , относящийся к стопке изображений, которая закодирована следующим образом:

for (int i=0; i < full; i++)
{
   Image star = new Image();
   star.Source = new BitmapImage(new Uri("/Images/Small_F.png", UriKind.Relative));
   d.Rating_PIC.Children.Add(star);
}  

Моя цель - добавить рейтинг звезд ListBoxItems , так как правильно связать содержимое этого стека со следующим пользовательским содержимым ??

ОБНОВЛЕНИЕ:

Я знаю, что стековая панель не может быть привязана таким образом, и альтернатива состоит в том, чтобы использовать структуру ItemsControl, как показано в этом Вопросе . Однако я не понял полного ответа там и как отобразить егов моем случае, поэтому любая помощь, чтобы уточнить это приветствуется.

1 Ответ

0 голосов
/ 12 сентября 2011

Вы не можете определить ItemsSource на StackPanel.Поэтому вы должны попытаться решить вашу проблему, используя ListBox или какой-либо другой объект ItemsControl.

Эта запись должна помочь вам в этом.

Также, возможно, рассмотрите возможность использованияготовый стартовый контроль (что, я думаю, вы пытаетесь сделать, верно?), посмотрите на этот один.

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