首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DynamicResource成员未更新

DynamicResource成员未更新
EN

Stack Overflow用户
提问于 2011-02-01 03:14:09
回答 1查看 619关注 0票数 0

我为一个列表框设置了这个数据模板:

代码语言:javascript
复制
    <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>

所以它显示了一个图像,以及它下面的一些文本。这是列表框:

代码语言:javascript
复制
                <ListBox x:Name="PageList" Grid.Column="0" ItemsSource="{DynamicResource SlideList}" 
                         ItemTemplate="{StaticResource SlideListItem}" MouseDown="PageList_MouseDown" SelectionChanged="PageList_SelectionChanged" />

SlideList是一个动态资源,更确切地说,它是我自己的类的ObservableCollection。这个类非常简单,只有几个属性(一些字符串、一个图像和一个列表)

问题是缩略图需要每隔几秒钟更新一次,但是当我尝试从c#更新它时,它并没有更新。我发现让它显示更新的唯一方法是删除DynamicResource,然后重新添加它。

EN

回答 1

Stack Overflow用户

发布于 2011-02-01 03:33:15

您是要更改缩略图属性,还是要替换ObservableCollection中的项目?

在第一种情况下,您的简单类必须实现INotifyPropertyChanged。否则,绑定目标将仅在改变集合时更新,例如,替换项、添加新项等,而不是当改变集合中的项时。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4854994

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档