Дерево значений на форме, Как удалить строку #195070


#0 by pauluss
Туплю я граждане, и чувствую себя идиотом. Вроде бы примитивная задача, а застрял. Есть дерево значений на форме. Имя: СоставНоменклатурныхГрупп Стоит задача удалить строку на которой стоит курсор Пишу: ЭлементыФормы.СоставНоменклатурныхГрупп.Значение.Строки.Удалить(ЭлементыФормы.СоставНоменклатурныхГрупп.ТекущаяСтрока); Ругается: Недопустимое значение параметра 1. Строка не принадлежит коллекции. Чето не врублюсь я как это победить
#1 by Волшебник
для начала: проверь в отладчике типы данных
#2 by pauluss
Гм. Странно. Пишу как советовали: Дерево = СоставНоменклатурныхГрупп;  (без ЭлементыФормы) Все логично. Возвращает дерево значений. Пишу дальше: ЭлементыФормы.СоставНоменклатурныхГрупп.ТекущаяСтрока (потому что у реквизита формы СоставНоменклатурныхГрупп нет свойства "ТекущаяСтрока", оно есть только у элемента формы) Проверяю типы. Все правильно: ЭлементыФормы.СоставНоменклатурныхГрупп.ТекущаяСтрока имеет тип "СтрокаДереваЗначений". Запускаю и получаю ту же ошибку. Печально :( P.S. Пардон за оффтопик, как выделять код рамочкой?
#3 by Волшебник
про выделение кода - ты не напрягайся. Форум сам всё раскрасит.
#4 by pauluss
*чухаю репу* Гм. А корневой элемент дерева удаляет.
#5 by pauluss
А как по строке дерева определить её индекс?
#6 by TormozIT
#7 by TormozIT
Ну и вызвать в твоем случае УдалитьСтрокуДерева(ЭлементыФормы.СоставНоменклатурныхГрупп.Значение.Строки,                    ЭлементыФормы.СоставНоменклатурныхГрупп.ТекущаяСтрока)
#8 by pauluss
Ага. Спасибо. Заработало. Хотя я весьма удивлен чесно говоря. Получается, что что-бы удалить известную строку мало просто вызвать метод Удалить, надо рекурсивно пробедать по дереву, найти эту строку, ещё раз её получить а только потом вызвать этот же самый метод удалить, причем даже с тем-же параметром. (я бы ещё понял, если бы внутри цикла по строкам надо было вызывать метод "Удалить" с параметром "Строка", а не "пУдаляемаяСтрока"). Спасибо ещё раз. *Ушел впечатленный*
#9 by TormozIT
Можно и проще. Но уже не так круто =))
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С