Перетаскивание из 2 источников в 1 цель в Flex, это возможно? - PullRequest
0 голосов
/ 02 февраля 2012

Мой вопрос прост.Допустим, у меня есть 2 List Controls.1 из пользователей и 1 из билетов.(2 источника)

И у меня есть DataGrid (цель).Возможно ли выбрать 1 пользователя и 1 билет в списке 2, упомянутом ранее, и перетащить их одновременно в DataGrid?

Я знаю, что это не так просто, как они будут автоматически смешиваться.. Если это возможно ... Я должен был бы использовать DragEnter Событие Datagrid или что-то еще, чтобы смешать их и создать мой dataProvider.Но я не знаю, как вы можете перетаскивать 2 элемента одновременно из разных источников.Это возможно с одним источником. Но не знаю, как это сделать с 2 источниками.

Любая помощь будет очень признательна.

Заранее спасибо

1 Ответ

1 голос
/ 03 февраля 2012

Да, я думаю, что это все еще возможно.

Ваш вариант будет:

(щелкните) выберите элемент в списке «Пользователи» и щелкните (выберите) элемент в разделе «Билеты».

Из любого списка, в котором вы начали перетаскивание, вы все равно сможете заполнить сетку данных элементами из dragEvent и выбранным элементом в списке.

// 
boolUsers:Boolean;

On your datagrid:
private function dataGrid_dragDrop(evt:DragEvent) :void
{
  // This will get the items from the list where you initiated the drag.
  var objDrag:Object;
  objDrag = evt.dragSource.dataForFormat("items");


  // Depending on where the drag was initiated, get the items from the list.
  var objList:Object;
  if(boolUsers)
  {
    objList = listTickets.selectedItem;
  }
  else
  {
    objList = listUsers.selectedItem;
  }

  boolUsers = false;
}

И вам нужно определить событие dragstart для обоих списков

private function listUsers_dragStart(evt:DragEvent) :void
{
  boolUsers = true;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...