0
我有一個通用的綁定到自定義控件的對象的列表。在代碼隱藏方面,一切似乎都行得通,但我對集合所做的任何更改似乎都不反映在UI中(即使它們在所有代碼中都可以找到)。當項目添加到綁定集合時,WPF - UI未更新
下面是我的UI的XAML:
<controls:ControllableListView x:Name="lvSummaryCaseEvents" Grid.Column="0" Grid.Row="0" Grid.ColumnSpan="3" Label="Case Events:" ItemsSource="{Binding CaseEvents}" AddButtonClicked="ControllableListView_AddButtonClicked">
背後,我添加項目到集合代碼:
_caseScreen.CaseEvents.Add(caseEvent);
//after the line above executes, lvSummaryCaseEvents (in the debugger) shows the correct number of items and the items' values are all correct. No change to the UI whatsoever
中的ItemSource屬性在我的用戶控件:
public static readonly DependencyProperty ItemsSourceProperty = DependencyProperty.Register("ItemsSource", typeof(System.Collections.IList), typeof(ControllableListView));
public System.Collections.IList ItemsSource
{
get
{
return this.GetValue(ItemsSourceProperty) as System.Collections.IList;
}
set
{
this.SetValue(ItemsSourceProperty, value);
}
}
最後,一個標準ListView的XAML位於我的用戶控件中,它是綁定的上面列出的ItemsSource屬性:
<ListView Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="4" Name="lvListView" ItemsSource="{Binding ItemsSource}" View="{Binding View}" SelectionChanged="lvListView_SelectionChanged" />
只是重申,一切工作正常,當我周圍顯示採集的第一次,但是當我將項目添加到集合,用戶界面不會反映所做的更改。
由於提前,
桑尼
是什麼類型_caseScreen.CaseEvents? – 2010-12-15 00:58:08