I can see what this would enable, but I have reservations about adding a general property-change handler to the language.
It would introduce a second event-like mechanism with quite a few semantic questions: whether an assignment or an actual value change triggers it, how computed and native properties participate, callback ordering and recursion, handler lifetime and removal, and how inherited properties behave. The proposed syntax is also potentially ambiguous because myListBox.ColumnCount normally evaluates the property rather than identifies it.
That feels like a substantial amount of language and runtime complexity for what might be a relatively narrow use case. Where notification is genuinely useful, I think an explicit event such as ColumnCountChanged on the relevant control would be clearer and more consistent with Objo’s existing event model.
I’m therefore reluctant to pursue general property-change handlers without several compelling use cases that can't be addressed cleanly through ordinary events or a subclass-specific API. If you have other concrete situations where you would use this, please share them - they would help clarify whether there is a broader problem worth solving.