В одном классе я добавляю объекты в свой ObservableCollection. И в другом классе я делаю материал с добавленным объектом, а затем удаляю его из коллекции.CollectionChanged Событие не срабатывает при статическом ObservableCollection
Эти два класса не могут общаться друг с другом, так что я решил пойти на static
коллекции (я только иметь доступ к определению класса для какой-то причине)
В моем первом классе, все элементы добавляются правильно (I проверили свойство Count
), во втором классе подписываюсь на событие CollectionChanged
. Однако мероприятие не поднимается. Я думаю, что это из-за ключевого слова static
, но я не уверен.
Вот пример кода:
static public class A
{
public static ObservableCollection<object> MyCollection = new ObservableCollection<object>();
}
public class B
{
public B()
{
A.MyCollection.CollectionChanged += Func_CollectionChanged;
}
void Func_CollectionChanged(...)
{
//Stuff
}
}
public class C
{
public void func()
{
A.MyCollection.Add(object);
}
}
выше фрагмент кода не так: как вы можете получить доступ к MyCollection, определенное в «А» без указания A в C -класс? –
Исправлен фрагмент кода. Вы поняли мою проблему даже с этой маленькой ошибкой. –