У меня есть класс, который представляет собой набор (MapAdapter
) и принимает коллекцию в качестве параметра конструктора .MapAdater добавляет объект Map на CollectionChanged:Уведомлять о свойствах в другом классе при изменении свойства?
public MapAdapter(UndoRedoCollection undoRedoCollection)
{
this.undoRedoCollection = undoRedoCollection;
this.undoRedoCollection.CollectionChanged += this.OnCollectionChanged;
}
Это моя коллекция изменилось событие, в котором добавляются объекты Карта:
private void OnCollectionChanged(object sender, NotifyCollectionChangedEventArgs e)
{
GetMapRules(TurbineUndoRedoCollection);
}
private void GetMapRules(UndoRedoCollection undoRedoCollection)
{
foreach (var item in undoRedoCollection)
{
this.Add(new Map(item));
}
}
у меня есть свойство на MapAdapter, который определяет, отображается ли слой на карте:
public bool IsLayerVisible
{
get
{
return this.isLayerVisible;
}
set
{
this.isLayerVisible = value;
this.OnPropertyChanged(new PropertyChangedEventArgs("IsLayerVisible"));
}
}
У меня есть аналогичная собственность на моем классе Map
. Мне нужно послушать IsLayerVisible
Свойство на моем MapAdapter
и сменить IsLayerVisible
на каждой из моих карт в коллекции MapAdapter
. Причина в том, что у меня есть элемент управления, который рисует изображение и передается в Map
, он ничего не знает о MapAdater
, поэтому я не могу контролировать, когда &, когда не рисовать на основе видимости.
Итак, что не работает для вас? –