У меня есть DependencyProperty
, который содержит сущность со свойством, являющимся коллекцией (ShoutBox.Entities
):
public static readonly DependencyProperty ShoutBoxProperty = DependencyProperty.Register("ShoutBox",typeof (ShoutBox),typeof (ShoutBoxViewerControl));
public ShoutBox ShoutBox
{
get { return (ShoutBox) GetValue(ShoutBoxProperty); }
set { SetValue(ShoutBoxProperty, value); }
}
Он связывается в xaml
, например:
<ItemsControl ItemsSource="{Binding ShoutBox.Entries}">
.
.
</ItemsControl>
Когда я связываю его в первый раз, он работает как положено, но бывают случаи, когда мне нужно добавлять элементы в коллекцию (с помощью метода, который находится в том же элементе управления), например:
public void AddNewEntry(ShoutBoxEntry newEntry)
{
Dispatcher.Invoke(new Action(() =>{
ShoutBox.Entries.Add(newEntry); //Adding directly the the Dependency property
}));
}
Проблема в том, что когда я добавляю новый элемент описанным выше способом, элемент не отображается в ItemsControl
.
У меня вопрос, , почему новый элемент, который я добавляю, не отображается в ItemsControl
?
[Изменить]
Entries
( ShoutBox.Entries ) имеет тип List<ShoutBoxEntry>