Участник DynamicResource не обновляется - PullRequest
0 голосов
/ 31 января 2011

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

    <DataTemplate x:Key="SlideListItem">
    <StackPanel>
        <Border Margin="1" BorderBrush="#505050" BorderThickness="1">
            <Border.Effect>
                <DropShadowEffect ShadowDepth="1" BlurRadius="3" Opacity=".5" />
            </Border.Effect>
            <Image Source="{Binding Thumbnail}" Stretch="Fill" VerticalAlignment="Center"/>
        </Border>
        <TextBlock Text="{Binding Title}" />
    </StackPanel>
</DataTemplate>

Итак, он отображает изображение и некоторый текст под ним.Это поле со списком:

                <ListBox x:Name="PageList" Grid.Column="0" ItemsSource="{DynamicResource SlideList}" 
                         ItemTemplate="{StaticResource SlideListItem}" MouseDown="PageList_MouseDown" SelectionChanged="PageList_SelectionChanged" />

SlideList - это динамический ресурс, точнее, ObservableCollection моего собственного класса.Класс довольно прост, имеет только несколько свойств (некоторые строки, изображение и список)

Проблема в том, что миниатюру нужно обновлять каждые несколько секунд, но когда я пытаюсь обновить ее из c #,это не обновляет.Единственный способ показать обновления - это удалить DynamicResource, а затем добавить его снова.

1 Ответ

1 голос
/ 31 января 2011

Меняете ли вы свойство Thumbnail или заменяете элемент в ObservableCollection?

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

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