10 Свойство возвращает массив, содержащий контролируемые объекты. Этот массив наблюдается, так что я могу это сделать:Наблюдение, упорядоченноеОбъекты от NSOutlineController
[_myArrayController addObserver:self forKeyPath:@"arrangedObjects.myProperty" options:0 context:myContext];
Каждый раз, когда свойство MyProperty любого из объектов в контроллере модифицируется, я сказал об этом.
Теперь мне нужно сделать то же самое, используя NSOutlineView
. Тем не менее, NSOutlineView
«s arrangedObjects
свойство возвращает массив NSTreeNodes, так что мне нужно сделать что-то вроде этого:
[_myArrayController addObserver:self forKeyPath:@"arrangedObjects.representedObject.myProperty" options:0 context:myContext];
Но это не разрешается, так как representedObject не КВЦ требованиям.
Есть ли простой способ сделать то, что мне нужно?
Я думал, что уложенные объекты NSTreeController возвратили один корневой узел прокси, так что устроили быObjects.childNodes.representedObject.myProperty? Насколько я знаю, даже если у вас несколько узлов верхнего уровня, вы можете добраться до них через allocObjects.childNodes. – stevesliva
Это правда, но это не работает – tarmes