C # WPF - есть список контейнеров и хотите обновить шаблоны каждого контейнера так, чтобы изображение в пределах размеров менялось - PullRequest
1 голос
/ 18 ноября 2010

У меня проблемы с обновлением моего DataTemplate для списка объектов «Кино». В частности, у меня есть изображение в тех объектах, которое отображается в списке зацикливания. Объект в центре будет иметь увеличенное изображение, тогда как изображения, расположенные дальше, станут меньше.

Я использую C # и WPF.

В моем окне. Ресурсы:

<DataTemplate DataType="{x:Type src:Movie}">
    <StackPanel Orientation="Vertical" Margin="0" Background="Transparent" Width="Auto" Name="MovieDataStack">
        <Image Name="MovieImage" Margin="10,0,10,0" Source="{Binding ImagePath}" Width="{Binding Size}" Height="Auto"  VerticalAlignment="Center" HorizontalAlignment="Center" />
    </StackPanel>
</DataTemplate>

Мой класс Movie содержит переменную с именем Size, которую можно изменить, но при каждом обновлении переменной шаблон не обновляется.

Я создаю список фильмов в начале моей программы (в App.xaml.cs) и использую этот список в другом файле xaml (TicketScreen.xaml):

<dw:LoopingListBox x:Name="movieScroller" Margin="81.683,65.013,66.149,43.342"
                           ItemsSource="{StaticResource Movies}"
                           ItemContainerStyle="{StaticResource MovieContainerStyle}" Background="Transparent" MouseUp="movieScroller_MouseUp"/>

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

Большое спасибо за помощь ^^

1 Ответ

0 голосов
/ 08 марта 2012

Это MVVM?

У вас должна быть коллекция данных, которая называется Movie

Коллекция фильмов под названием Movies.

Поиск бросил вашу коллекцию фильмов и измените свойство, соответствующее номеру товара.

int TempIndex;
TempIndex = Movies.Count / 2;
TempMovie = Movies[TempIndex];
TempMovie.Width = 155;
TempMovie.Height = 155;

Вероятно, есть лучший способ сделать это, но так я делал это в прошлом. Синтаксис, вероятно, не совершенен либо

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