|
Hola Tengo un datagrid que tiene un un arrayCollection con la siguiente estructura.. ! provider : name adress age y ademas tengo un VO llamado personalVO con la misma estructura.... y ademas con todos los miembros seteados con [Bindable] y publicos Ahora bien.. tengo una clase singleton que tiene un miembro llamado selected que es de tipo personalVO. ent.. en el evento change del datagrid digo que... Código : change="{ singleton.selected=grid.selectedItem as personalVO }"pero cuando voy a hacer un trace del objeto selected del singleton me dice que es un null. en el evento change no se le asigno valores . que puede estar pasando o que estoy haciendo mal saludos |
|
|
No puedes hacerlo así. El operador as solo funciona si la segunda clase extiende a la primera. Tendrás que hacerte una función que convierta los tipos de clase. |
Zah
4 Tutoriales |
|
Si es que queria evitarme crear un objeto, asignarle cada valor que entra y despues escupirselo al selected..... gegee,, no hay otra forma de pasarle los datos directamente a la variable selected saludos y gracais por la pronta respuesta... |
|
|
Yo tengo una clase, que lo hace dinámicamente. Código : package core.components.utils
{
import mx.core.ClassFactory;
public class DataConvert
{
public static function objectToClass(value:Object, tClass:Class):Object
{
var newClass:Object;
newClass = new tClass();
for(var i:String in value)
{
if( newClass.hasOwnProperty(i) )
{
try
{
tClass(newClass)[i] = value[i];
}
catch(err:Error)
{
throw new Error("Error setting " + i + " to the new class. Incompatible datatypes. \n" + err.message);
}
}
}
return newClass;
}
}
}pd. Zah, no sé como andas de tiempo, pero si tuvieras chance y te interesa, ojala me ayudarás a hacer un tip usando la clase y explicando un poco como va. Si te interesa, me mandas un privado, gracias. |
Dano
3 Tutoriales |
|
por dios Dano , que freak...... gracias por compartir este tipo de info. saludos |
|
|
Dano con solo con el objecto puedes obtener una nueva instancia de la clase, asi que el parametro class creo que sobraria. Código : import flash.utils.*; var cls_reference:Class = getDefinitionByName(getQualifiedClassName(value)) as Class; var obj_myNewObject:Object = new cls_reference(); dejame saber lo que piensas... saludos |
|
|
jeje. Bipsa, es que el detalle que por objeto, me refiero a un objeto genérico. En esos casos creo, que no funciona lo que propones. saludos |
Dano
3 Tutoriales |
|
En tu funcion miras las propiedades que tiene ese objecto y le pones los mismos valores a tu object... |
|