I’ve created a subclass of NSButtonCell in which I expose a new binding, backgroundColor. In the ASOC code, I build a matrix with these button cells and bind the backgroundColor to an array of colors, with the cell’s tag being used to provide the index into that array. This works fine, I can log the exposedBindings or infoForBinding: and I get what I should. However, when I save the matrix with a keyed archiver and then reopen the app, the bindings are gone, including the fact that backgroundColor no longer shows up in the log of exposedBindings. When you make bindings in IB, they obviously persist when the .xib is archived and unarchived with closing and opening of an app – why is this not the case with bindings that I create in code?