J'ai un NSTableView qui lie via un NSArrayController à un NSMutableArray. Ce qui est dans le tableau sont des classes dérivées; les premières colonnes de la table sont liées aux propriétés qui existent sur la classe de base. Tout fonctionne bien.Valeurs de colonnes conditionnelles dans NSTableView?
Lorsque je rencontre un problème, une colonne ne doit être remplie que si la ligne correspond à une sous-classe spécifique. La propriété que cette colonne est destinée à afficher n'existe que dans cette sous-classe, car elle n'a aucun sens en termes de classe de base. L'utilisateur saura, à partir des deux premières colonnes, pourquoi la cellule de la troisième colonne est remplie/modifiable ou non.
La liaison sur la valeur de la troisième colonne est placéeObjects, avec un chemin de modèle de quelque chose comme "foo.name" où foo est la propriété de la sous-classe. Toutefois, cela ne fonctionne pas, car les autres sous-classes de la hiérarchie ne sont pas compatibles avec les valeurs-clés pour foo.
Il semble que mon seul choix est d'avoir une propriété foo sur la classe de base afin que tout le monde y réponde, mais cela encombre les interfaces des objets du modèle.
Quelqu'un a-t-il trouvé un design épuré pour cette situation? Il ne peut pas être rare (je suis un nouveau venu relativement à Cocoa et j'apprends juste les tenants et aboutissants des fixations.)