我遇到了一个问题,当添加新项目时,直接绑定的ObservableCollection不能更新StackPanel。任何初始项目都会正确显示。只有以后添加的项目才无法显示。XAML:
<ItemsControl x:Name="ImageTable" ItemsSource="{Binding Path=SystemObjectViewItems, Converter={StaticResource UIElementWrapper}}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<Grid>
<ContentPresenter Content="{Binding Path=Value.View}"/>
</Grid>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>我使用的是Prism MVVM,所以我绑定到我的ViewModel,它有一个属性:
public ObservableCollection<SystemObjectViewPresentationModel> SystemObjectViewItems {get; set; }基本的转换器和绑定正在工作,这可以从我的初始项正确显示的事实中得到证明。只有在初始绑定之后添加到集合中的项才不会显示。有什么想法吗?谢谢,瑞克
发布于 2009-08-14 12:56:33
我要大胆猜测一下,这就是您正在使用的StaticResource。
如果您没有从它返回一个ObservableCollection,并且您没有绑定它来查看原始的ObservableCollection更改,那么它将无法工作。
你能把代码发布到转换器上吗?
https://stackoverflow.com/questions/1274359
复制相似问题