У меня есть элемент управления панорамой, шаблон данных которого выглядит следующим образом: -
<DataTemplate x:Key="DataTemplateCategory">
<Grid >
<localControls:PanoramaItem BookmarkedTopics="{Binding Path=BookmarkedTopics,ElementName=root}" Topics="{Binding Topics}"/>
</Grid>
</DataTemplate>
Корень - это имя пользовательского элемента управления, в котором определяется панорама. и BookmarkedTopics in Path - это DependencyProperty в корне (usercontrol), определение которого следующее: -
public static readonly DependencyProperty BookmarkedTopicsProperty = DependencyProperty.Register("BookmarkedTopics",
typeof(ObservableCollection<Topic>), typeof(MainPage), new PropertyMetadata(new ObservableCollection<Topic>()));
public ObservableCollection<Topic> BookmarkedTopics
{
get { return GetValue(BookmarkedTopicsProperty) as ObservableCollection<Topic>; }
set
{
SetValue(BookmarkedTopicsProperty, value);
}
}
BookmarkedTopics устанавливается в MainPage_Loaded, и это никогда не пустая или пустая коллекция (не имеет отношения к моему вопросу, но все же подумал упомянуть об этом). BookmarkedTopics - это свойство Dependency в PanoramaItem, определение которого: -
public static readonly DependencyProperty BookmarkedTopicsProperty = DependencyProperty.Register("BookmarkedTopics",
typeof(ObservableCollection<Topic>), typeof(PanoramaItem), new PropertyMetadata(new ObservableCollection<Topic>()));
public ObservableCollection<Topic> BookmarkedTopics
{
get { return GetValue(BookmarkedTopicsProperty) as ObservableCollection<Topic>; }
set
{
SetValue(BookmarkedTopicsProperty, value);
}
}
Проблема в том, что когда BookmarkedTopics устанавливаются в MainPage_Loaded, почему установщик BookmarkedTopics в PanoramaItem не запускается? Любая ошибка, которую вы можете увидеть в коде?
Заранее спасибо:)