Kevin,

In a cairngorm app, you want to detect the change to the row and then send
it to the server. If the server accepts the change then in the response to
the command object you change the item in the arrayCollection which is then
reflected in your data grid, which is bound to the arrayCollection. If you
dont do it this way then your data model is not in sync with the server,
which you want to avoid. By the way you want to use the functions of the
arrayCollection to change the data because otherwise events that cause the
datagrid to update will not be triggered.

Hank

On 3/12/07, Kevin <[EMAIL PROTECTED]> wrote:

I am working on a Cairngorm app.  I have a simple User Admin Interface.
The ModelLocator stores a list of all the Users as
currentUsersList: ArrayCollection

I populate a small DataGrid with this list and everything is working
fine.  To edit the list, the user can click on a row in the DataGrid and
then edit the information.  The problem is that for some reason the changed
information isn't getting changed in the DataGrid like it should.  What is
the proper way to bind a control to an individual item in an
ArrayCollection?

I first tried to create a variable in the ML to hold the UserDataVO that
had been selected:

selectedUser: UserDataVO = currentUsersList[some selected index];

However, this seems to 'copy' (rather than reference) the VO from the
Array collection and thus changes to this VO do not get reflected in the
original ArrayCollection

I then tried to bind directly to the ArrayCollection items using getItemAt

text = {model.currentUsersList.getItemAt(selectedIndex).username}

However, this doesn't seem to work to modify the original values in the
ArrayCollection. What am I doing wrong.  I don't think it should be this
hard.

Thanks, Kevin


Reply via email to