Is this a Cairngorm app? If so the way I accomplish this is that the "focusOut view event" dispatches a Cairngorm "userEdit event" which has both the property and value embedded in it. The FrontController passes this event to the command the command instance makes local copies of the values and then can do what ever it needs to in the result handler. Does that make sense?
--Sean ----- Original Message ---- From: Kevin <[EMAIL PROTECTED]> To: [email protected] Sent: Tuesday, March 13, 2007 2:17:12 AM Subject: [flexcoders] Pass ModelLocator reference to Command? Here is where I am struggling. I have created a component extended from the TextInput field to update certain fields in my database. The text property of the TextInput class is bound to a value form the ModelLocator. When this value is changed (focusOut event) a general command is sent to the database with an id that indicates which database field should be updated. The update happens and a 'success' result is returned to the Command. The idea is that fields are updated as the user tabs rather than using a 'submit' button. Everything is working well up to this point, until.... On a successful database update, I can't figure out a way to update the modelLocator from the Command. Since this is a generic Command I need to be able to dynamically tell the Command which ModelLocator property to update on which call. Here are the solutions I have thought of but I can't seem to get anything working. 1) Pass a reference to the ModelLocator property that needs updating and then update that reference in the Command. Unfortunately, I can't figure out how (and if I even can) pass a true reference to the Command. It seems that everything I try just get passed as a string. 2) Pass a string to the Command that can be parsed into a ML reference. This can work...sometimes on simple VO's, but gets very complicated with nest VO's in ArrayCollections. I am not sure there is an easy way to do this... 3) Create some sort of hash map or array map that maps certain 'codes' to ModelLocator properties. This seems rather brittle & time consuming. 4) Create 2-way binding using the Binding class. I was able to do this and make it work, however, I couldn't find a way to do it dynamically, where the 'destination' property could be a variable and not a string. Also, I could only set this while in the view, which means, the ModelLocator would get updated before it was confirmed that the server update was successful. Obviously this is a little dangerous. I am out of ideas, but I still think there must be a way to achieve this. Any thoughts??? Thanks for the help, Kevin <!-- #ygrp-mlmsg {font-size:13px;font-family:arial,helvetica,clean,sans-serif;} #ygrp-mlmsg table {font-size:inherit;font:100%;} #ygrp-mlmsg select, input, textarea {font:99% arial,helvetica,clean,sans-serif;} #ygrp-mlmsg pre, code {font:115% monospace;} #ygrp-mlmsg * {line-height:1.22em;} #ygrp-text{ font-family:Georgia; } #ygrp-text p{ margin:0 0 1em 0; } #ygrp-tpmsgs{ font-family:Arial; clear:both; } #ygrp-vitnav{ padding-top:10px; font-family:Verdana; font-size:77%; margin:0; } #ygrp-vitnav a{ padding:0 1px; } #ygrp-actbar{ clear:both; margin:25px 0; white-space:nowrap; color:#666; text-align:right; } #ygrp-actbar .left{ float:left; white-space:nowrap; } .bld{font-weight:bold;} #ygrp-grft{ font-family:Verdana; font-size:77%; padding:15px 0; } #ygrp-ft{ font-family:verdana; font-size:77%; border-top:1px solid #666; padding:5px 0; } #ygrp-mlmsg #logo{ padding-bottom:10px; } #ygrp-vital{ background-color:#e0ecee; margin-bottom:20px; padding:2px 0 8px 8px; } #ygrp-vital #vithd{ font-size:77%; font-family:Verdana; font-weight:bold; color:#333; text-transform:uppercase; } #ygrp-vital ul{ padding:0; margin:2px 0; } #ygrp-vital ul li{ list-style-type:none; clear:both; border:1px solid #e0ecee; } #ygrp-vital ul li .ct{ font-weight:bold; color:#ff7900; float:right; width:2em; text-align:right; padding-right:.5em; } #ygrp-vital ul li .cat{ font-weight:bold; } #ygrp-vital a { text-decoration:none; } #ygrp-vital a:hover{ text-decoration:underline; } #ygrp-sponsor #hd{ color:#999; font-size:77%; } #ygrp-sponsor #ov{ padding:6px 13px; background-color:#e0ecee; margin-bottom:20px; } #ygrp-sponsor #ov ul{ padding:0 0 0 8px; margin:0; } #ygrp-sponsor #ov li{ list-style-type:square; padding:6px 0; font-size:77%; } #ygrp-sponsor #ov li a{ text-decoration:none; font-size:130%; } #ygrp-sponsor #nc { background-color:#eee; margin-bottom:20px; padding:0 8px; } #ygrp-sponsor .ad{ padding:8px 0; } #ygrp-sponsor .ad #hd1{ font-family:Arial; font-weight:bold; color:#628c2a; font-size:100%; line-height:122%; } #ygrp-sponsor .ad a{ text-decoration:none; } #ygrp-sponsor .ad a:hover{ text-decoration:underline; } #ygrp-sponsor .ad p{ margin:0; } o {font-size:0;} .MsoNormal { margin:0 0 0 0; } #ygrp-text tt{ font-size:120%; } blockquote{margin:0 0 0 4px;} .replbq {margin:4;} --> ____________________________________________________________________________________ Never miss an email again! Yahoo! Toolbar alerts you the instant new Mail arrives. http://tools.search.yahoo.com/toolbar/features/mail/

