![]() |
DataGrid: отображение CheckBox'ов в itemRenderer
Только заметил такую пакость:
есть очень простенький DataGrid, у которого один столбец, связанный с коллекцией, но перед label изображен CheckBox; если выделяем один из чекбоксов, а потом скроллируем DataGrid вниз, то видим, что уже отмечены другие чекбоксы (примерно 1 на страницу). Понимаю, что это специфика itemRenderer'а, так как он "видит" и "рисует" только видимые элементы. Из просмотренного в инете вижу, что делают внешние компоненты, и достаточно тяжелые даже для отображения такого простенького датагрида. Просто чекбоксы не связаны у меня с моделью данных, исключительно для представления: скажем, при выборе чекбокса что-то отображать или прятать. Можно ли без усложнения сделать так, чтобы датагрид (а точнее, itemRenderer) "помнил", какие чекбоксы выбраны, а какие - нет? |
Заставлять датагрид "помнить" лишнюю информацию - это и есть усложнение.
А в чем проблема написать инлайн-рендерер типа <mx:CheckBox selected="{data.boxSelected}" /> или что-то вроде? Очень же просто. |
Во-во, я понимаю, что "просто". А boxSelected прописывать в модель? - По этому пути можно пойти, но не хочется :(
|
2 Dimitry_II:
А чего не хочется? Это будет логично. Есть данные, есть их свойства всякие. То, что что-то там выбрано,- тоже свойство. Все так делают: http://blog.flexexamples.com/2008/01...derer-in-flex/ |
Да, спасибо, я уже так и сделал (просто не закрыл тему).
Просто мне показалась несколько нелогичной работа DataGrid+itemRenderer: я не терял фокус, не менял датапровайдер, в общем, не делел ни-че-го, только прокрутил скроллер - а чекбокс уже"слетел". Понимаю, что selected для чекбоксов ничему не равен и как бы берется из ниоткуда, но все же... Поэтому в классе прописал еще одно свойство - неудобно, так как это библиотечный класс и будет использоваться в нескольких Представлениях, и для каждого прийдется обнулять параметры, так как этот параметр к Модели не имеет никакого отношения. Слава |
| Часовой пояс GMT +4, время: 12:33. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.