Возможно ли обновить только один элемент в flex DataProvider?Обновление только части поставщика данных. Возможное?
Например, достижение чего-то вроде этого
[Bindable]
private var nodes : VectorCollection = new VectorCollection();
/* thousands of insertions on nodes */
/* Triggered by some event */
public function nodeStatusChanged(nodeId : Number) : void {
nodes.refresh(nodeId);
}
а не делать nodes.refresh()
на каждом nodeStatusChanged(nodeId)
вызове
Есть мысли? Спасибо заранее.
Я не уверен, что я понимаю ваш вопрос. Если вы измените один элемент в коллекции, он ** должен ** отправить соответствующее событие CollectionChange. Я делаю некоторые предположения здесь: 1) класс VectorCollection, который вы используете, реализует интерфейс IList (поэтому вы можете использовать векторную коллекцию для всего, что ожидает ArrayCollection или аналогичный класс IList), 2) VectorCollection направляет соответствующие Событие CollectionChange, которое указывает, что один или несколько элементов в коллекции были изменены (например, ArrayCollection). –
PS: Я написал [свой собственный класс VectorCollection] (https://github.com/sunild/Flex-Collection-Utils) несколько лет назад и отправляет соответствующие события CollectionChange. Цель реализации заключалась в том, чтобы сделать ее максимально возможной, уменьшив количество кастинга, которое произойдет. –