あなたは本当にあなたが望むことをすることはできません。それを説明する方法を私が知っている最良の方法は、バインディングが1レベルの深さしかないということです。一方、バインディングを2レベル深くしようとしています。
このコード:
<myComponent obj="{myObject}" />
Flexに変数myObjectを確認するように指示し、myObjectが変更されるたびに、myComponentのobjプロパティも変更されます。myObjectが指す変数を見てください。
このコード:
<fx:prop1>{myButton.selected}</fx:prop1>
myObjectのプロパティを変更します。ただし、myObjectは変更されません。myObjectはまだ同じメモリスペース/変数スペースを指しています。
myObjectのプロパティが変更されるたびにmyComponentを変更するには; 私は完全に異なるアプローチを使用します。myObjectをActionScriptクラスとして作成します。get / setプロパティを利用し、プロパティが変更されるたびにイベントをディスパッチします。
myComponent内で、objをget/setメソッドとして実装できます。setメソッドで、myObjectで設定したプロパティの変更にイベントリスナーを追加します。イベントリスナーメソッドでは、適切な変更を実装します。
それはあなたがしていることからの些細な変化ではありません。しかし、それも難しいことではありません。