StackPanel没有更新

时间:2009-08-13 20:23:58

标签: silverlight data-binding datacontext

我遇到了直接绑定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; }

基本转换器和绑定工作正常,因为我的初始项目正确显示。它只是在初始绑定后未显示的项目中添加的项目。 有任何想法吗? 谢谢, 瑞克

1 个答案:

答案 0 :(得分:2)

我会猜测并说这是你正在使用的StaticResource。

如果你没有从它返回一个ObservableCollection并且你没有绑定它来观察原始的ObservableCollection更改它将无法工作。

您可以将代码发布到转换器吗?