У меня есть компонент списка, и у меня есть редактор элементов для элементов в списке. Я хотел бы иметь кнопку, которую пользователь нажимает, когда они будут сделаны с их изменениями, потому что мне приходится редактировать несколько фрагментов данных в редакторе, и я также хотел бы проверить данные перед закрытием редактора. Я просто не знаю, что делать в событии нажатия кнопки, чтобы закрыть редактор объектов и передать его изменения поставщику данных.Как создать редактор элементов в компоненте списка гибких списков?
ответ
Вы хотите использовать валидатор для проверки данных, и я думаю, что может быть что-то делать с updateComplete и изменить событие отложить обновление компонента списка:
я хотел бы использовать привязки данных, и пусть Flex выполнит эту работу для вас.
Имейте объект myObject со связываемым свойством myList: IList. Привяжите экран к этому объекту.
Когда вы начнете редактирование, скопируйте этот список.
На MouseEvent.CLICK:
var ed:Editor // Your list editing object.
var edProvider:IList = ed.dataProvider;
var targList:IList = myObject.myList;
var bool:Boolean = (myObject.myList.length > edProvider.length);
var len:int = (bool)? targList.length: edProvider.length;
var item:* = null;
for(var i:int = 0; i < len; i++)
{
try // a "just in case". You probably will never have a problem.
{
item = edProvider.getItemAt(i);
targList.setItemAt(item, i);
}
catch(error:Error)
{
continue;
}
}
Для обработки редактирования нескольких полей в элементе управления List, вам нужно будет поймать событие ItemEditEnd, а затем вручную изменить поля вы заинтересованы в
.См. «Пример: использование настраиваемого редактора элементов с помощью элемента управления списком» здесь - http://livedocs.adobe.com/flex/3/html/help.html?content=celleditor_9.html#226555.
Обычно List обрабатывает отправку этого события для вас, когда вы фокусируетесь из ячейки. Я не уверен в своих свойствах с головы, но вы должны иметь возможность построить это событие в своем обработчике кликов, а затем просто отправить его самостоятельно.
Спасибо за ответ, но это не совсем то, что я ищу. Установка значений частей, если это штраф, это просто проверка и закрытие части редактора элементов, в которой мне нужна помощь. – smartdirt