Hello Stackoverflowians,
У меня есть вопросы относительно того, как наилучшим образом убедиться, что ваши представления Silverlight или WPF правильно запускают события NotifyPropertyChanged.
У меня есть случай вприложение Silverlight, где я устанавливаю свой DataContext следующим образом:
public SubTopic SubTopicItem
{
get { return (SubTopic)GetValue(SubTopicItemProperty); }
set { SetValue(SubTopicItemProperty, value); }
}
// Using a DependencyProperty as the backing store for SubTopicItem. This enables animation, styling, binding, etc...
public static readonly DependencyProperty SubTopicItemProperty =
DependencyProperty.Register("SubTopicItem", typeof(SubTopic), typeof(AddModifySubTopic), new PropertyMetadata(null));
public AddModifySubTopic()
{
InitializeComponent();
this.DataContext = this;
}
И у меня возникают проблемы с некоторыми сетками данных, которые извлекают данные из некоторых объектов EntityPropertys, находящихся на этом объекте.
MyГлавный вопрос заключается в том, будет ли какая-то реальная разница, если вместо использования
public AddModifySubTopic()
{
InitializeComponent();
this.DataContext = this;
}
я использую:
public AddModifySubTopic()
{
InitializeComponent();
this.DataContext = SubTopicItem;
}
Будет ли Silverlight или WPF Framework обрабатывать DataContext более напрямую, и уведомлять, есликакие-либо свойства или наборы сущностей меняются в течение срока службы объекта?
В данный момент мне нужно обновить мои DataGrids с помощью
DataGridName.SetValue(DataGrid.ItemsSourceProperty, SubTopicItem);
Спасибо всем.
Ура Робби