A binding event generally does not fire if the value does not change.
Ok, then I have two questions:
1. How can I programmatically fire such event?
2. If I can't then how I can have a value that is bound to selectedIdex being set?
You can examine the binding events for the property and dispatch the event yourself. VALUE_COMMIT is probably the event you want.
<You can examine the binding events for the property
How exactly would I do that?
in my grid is this what I need?
override public function get selectedIndex():int
In the source code. But it also occurred to me that it should properly evaluate the expression once, unless you are getting other binding warnings. It is probably best for you to provide a simple test case that illustrates the problem.