En el siguiente ejemplo vamos a ver como lograr de manera muy fácil la funcionalidad de pasar datos de un DataGrid hacia otro o viceversa con solo realizar el típico "drag and drop" del ratón (presionando el botón izquierdo del ratón sobre el dato que queremos pasar y arrastrándolo hasta el DataGrid que deseamos que reciba la información). Para empezar la explicación vamos a ver en funcionamiento del ejemplo que vamos a realizar:
Existen varias maneras de realizar esta funcionalidad, algunas de ellas requieren mayor dedicación y programación por parte del desarrollador y otras no, así como también las que requieren mayor programación también permiten un mayor control. En este voy a explicar la mas sencilla y fácil de implementar.
Todos los objetos que heredan de la clase ListBase (El DataGrid tambien, por heredar de esta clase) tienen 5 propiedades muy interesantes que permiten contemplar la funcionalidad Drag and Drop de una manera muy sencilla:
Entonces si en este ejemplo nosotros queremos realizar un drag and drop de el datagrid superior al datagrid inferior entonces debemos colocarle al datagrid superior las siguientes propiedades dragEnabled, allowDragSelection y dragMoveEnables como true. Y en el caso del datagrid inferior debemos colocarle la propiedad dropEnabled como true.
Si nosotros quisieramos podríamos reemplazar uno de los DataGrid utilizados en este ejemplo por cualquier otro componente que herede de la clase ListBase (El List, TitleList, Tree, etc.).
Bueno eso es todo! Como pueden ver es demasiado simple y fácil de realizar. Cualquier pregunta, si es que las tienen, no duden en realizarlas en los comentarios del post que yo siempre estoy pendiente de responderlas! Para descargar el código fuente del ejemplo presiona click aquí.
viernes, 12 de junio de 2009
Drag and Drop muy fácil con un DataGrid Flex
Suscribirse a:
Enviar comentarios (Atom)
Muchas gracias tu código me ayudo demasiado
ResponderEliminargracias
ResponderEliminarme sirvio muxo
Hola muchas gracias por el tutorial, tengo una pregunta
ResponderEliminarSi tengo 4 datagrid
y necesito que se puedan intercambiar datos el datagrid 1 con el 2
y que no se mezclen con el datagrid3 y 4 que a su ves se intercambian datos entre ellos
gracias
Tengo el mismo problema que plantearon de los 4 datagrid. Como se puede hacer para controlar que no se pasen datos entre los 4 data grid? Muchas gracias.
ResponderEliminarExcelente aporte muchas gracias por compartir.
ResponderEliminarSaludos.
Gracias por el aporte.
ResponderEliminarY si sólo quiero copiar una sola celda arrastrando a otra celda de otro datagrid, cómo lo hago?
Saludos