![]() |
custom itemEditor AdvancedDataGrid
Написал свой itemEditor для AdvancedDataGrid.
В этом эдиторе есть кнопка которая грузит файл с диска на сервер и вкручивает урл в поле данных. Проблема в том что когда я выбираю файл, выкидывается виндовый диалог выбора файлов. ДатаГрид теряет фокус. А при потере фокуса он убивает эдитор по-умолчанию. Так вот эту проблему я решил, уже не убивает если мне не надо его убивать. Но теперь другая хрень. ДатаГрид использует ровно столько єдиторов и рендереров сколько влазит в экран. В моем случае 20 штук. Если таблица больше 20-и - те которые не влазят в первую страницу редактируются неадекватно. Вроде как погуглил - правильно надо не блочить закрытие эдитора как делаю я, а сохранять данные, убивать эдитор, а потом при получении фокуса опять пересоздавать его. И в него пихать новые данные. Окай, сделал так, но проблема с 20-ю элементами всё-равно осталась. Видимо как-то неправильно создаю. Чего гриду не хватает при создании эдитора который не влазит в первую страницу. Код покажу если надо. Просто я совсем не уверен что правильно делаю потому просто хочу спросить - а как надо? Мне кажется что проще будет этот участок переписать нежели исправить. |
Если с эдитором, то так и надо, как в последнем варианте. Ты бы в картинках объяснил, что тебе надо и что получается.
|
Файл который открывает диалог - находится прямо в эдиторе. Получается что результат открытия файла у меня в эдиторе. В итоге я открываю файл провожу с ним манипуляции всё ок.
Во-первых я лочу эдитор от закрытия если диалог сейчас открыт. Код AS3:
Код AS3:
Добавлено через 1 минуту Это мой первый проект на флексе, я вообще пур-ас3 пишу обычно. Так что не исключено что тут полная шляпа. Буду рад любым комментариям. репо на битбакете Добавлено через 5 минут Эта схема редактирует текущую ячейку нормально. Но при переходе на другую вылетает. При условии что текущая находится вне этих 20-и строк. Ошибка где-то внутри грида в editEnd(). |
Цитата:
Можно и без editor'a обойтись. Сделай просто ItemRenderer с кнопкой (или выглядящий как кнопка), при клике на него вызывай диалог открытия файла и посылай всплывающее событие со ссылкой на item и filereference (как пример). Или прям в рендерере и меняй данные. Или из эдитора событие посылай и не трогай onItemEditEnd. Не понятно зачем тебе понадобился эдитор в данном случае, если он не редактирует данные. |
Цитата:
Цитата:
|
Открой отдельное окно и не мучайся. ItemEditor больше подходит для инлайн редактирования.
Скорее всего ты пытаешься получить несуществующий рендерер. Увы я стек телепатически получать не умею. В каком классе, в исходниках, хоть находится приведенный код? |
Вложений: 1
Вложение 28910
Ну так инлайн редактирование и есть) Еще одно окно я слабо представляю куда тут прикрутить. Но могу конечно вынести кнопку куда-то нафиг в тулбар, а потом руками всё делать, данные обновлять и в таком духе. |
Цитата:
|
Цитата:
Добавлено через 2 минуты Что сохраняется в editedItemPosition? |
JsonTreeGrid.mxml
Добавлено через 46 секунд Короче ладно, прикручу тулбар. Но вообще проблему хотелось бы решить хотя бы из-за спортивного интереса. Добавлено через 5 минут Цитата:
|
| Часовой пояс GMT +4, время: 11:09. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.