Можно ли получить элемент System.Windows.Controls.TreeView по имени уз
#1
Отправлено 18 ноября 2011 - 09:07
DelphiScript.
Есть WPF контрол System.Windows.Controls.TreeView. На нем есть иерархия объектов. Необходимо выделить нужный мне элемент в иерархии.
Пробовал выбирать, используя метод ClickItem('|Item1|Item1.1'). При выполнении пишет, что такого узла нет.
Если выбирать по индексам ClickItem('|[0]|[1]'), то все работает.
В документации написано, что должно работать и по именам и по индексам.
В дереве System.Windows.Forms.TreeView тоже самое нормально работает.
Кто-нибудь сталкивался с таким?
#2
Отправлено 18 ноября 2011 - 11:28
#3
Отправлено 18 ноября 2011 - 11:52
Можно и у них поинтересоваться как он работает.
#4
Отправлено 18 ноября 2011 - 12:05
Раскрывать пробовал. Даже корень не может выделить, так что явно дело не в распахнутости.Возможно нужно сначало раскрыть все дерево?
#5
Отправлено 18 ноября 2011 - 12:12
Ещё надо учесть, что разработчики могли переписать контрол до неузнаваемости :)
Можно и у них поинтересоваться как он работает.
Да контроль не переделывался, используется стандартный контроль, который входит в dotNet. Может дело в том что для отображения узла используется ItemTemplate. Т.е. реально в узле не просто строка, а контроль TextBox, в который уже биндятся нужные данные.
#6
Отправлено 18 ноября 2011 - 13:16
Попробуйте добавить класс дерева System.Windows.Controls.TreeView и класс text box'а в таблицы в проектных настройках > Open Applications > WPF.
Ещё надо учесть, что разработчики могли переписать контрол до неузнаваемости :)
Можно и у них поинтересоваться как он работает.
Да контроль не переделывался, используется стандартный контроль, который входит в dotNet. Может дело в том что для отображения узла используется ItemTemplate. Т.е. реально в узле не просто строка, а контроль TextBox, в который уже биндятся нужные данные.
#7
Отправлено 18 ноября 2011 - 13:50
О, классно, не пользовался никогда этой опцией. И что, ТестКомплит будет видеть TreeView и TextBox? А если там комбик, то можно в таблицу Open Applications > WPF добавить ComboBox ?Попробуйте добавить класс дерева System.Windows.Controls.TreeView и класс text box'а в таблицы в проекнтых настройках > Open Applications > WPF.
Ещё надо учесть, что разработчики могли переписать контрол до неузнаваемости :)
Можно и у них поинтересоваться как он работает.
Да контроль не переделывался, используется стандартный контроль, который входит в dotNet. Может дело в том что для отображения узла используется ItemTemplate. Т.е. реально в узле не просто строка, а контроль TextBox, в который уже биндятся нужные данные.
#8
Отправлено 18 ноября 2011 - 14:54
Не знаю, мне этой опцией тоже пока не приходилось пользоваться. :) Просто по названию и описанию опций предположила, что это то, что надо.О, классно, не пользовался никогда этой опцией. И что, ТестКомплит будет видеть TreeView и TextBox? А если там комбик, то можно в таблицу Open Applications > WPF добавить ComboBox ?
Попробуйте добавить класс дерева System.Windows.Controls.TreeView и класс text box'а в таблицы в проекнтых настройках > Open Applications > WPF.
Ещё надо учесть, что разработчики могли переписать контрол до неузнаваемости :)
Можно и у них поинтересоваться как он работает.
Да контроль не переделывался, используется стандартный контроль, который входит в dotNet. Может дело в том что для отображения узла используется ItemTemplate. Т.е. реально в узле не просто строка, а контроль TextBox, в который уже биндятся нужные данные.
#9
Отправлено 21 ноября 2011 - 10:30
Добавил, не помогло. (((Попробуйте добавить класс дерева System.Windows.Controls.TreeView и класс text box'а в таблицы в проекнтых настройках > Open Applications > WPF.
Ещё надо учесть, что разработчики могли переписать контрол до неузнаваемости :)
Можно и у них поинтересоваться как он работает.
Да контроль не переделывался, используется стандартный контроль, который входит в dotNet. Может дело в том что для отображения узла используется ItemTemplate. Т.е. реально в узле не просто строка, а контроль TextBox, в который уже биндятся нужные данные.
В итоге сделал так. Через свойство Items нахожу индекс нужного элемента и далее выбираю элемент в дереве по индексу. Но этот способ подходит только для конкретного места, так как идет привязка к конкретным свойствам объектов, в которых лежит отображаемое значение.
#10
Отправлено 22 ноября 2011 - 09:32
TestComplete 8.60.665.7.
DelphiScript.
Есть WPF контрол System.Windows.Controls.TreeView. На нем есть иерархия объектов. Необходимо выделить нужный мне элемент в иерархии.
Пробовал выбирать, используя метод ClickItem('|Item1|Item1.1'). При выполнении пишет, что такого узла нет.
Если выбирать по индексам ClickItem('|[0]|[1]'), то все работает.
В документации написано, что должно работать и по именам и по индексам.
В дереве System.Windows.Forms.TreeView тоже самое нормально работает.
Кто-нибудь сталкивался с таким?
Можешь скрин дерева показать с выделенным элементом который хочешь выделить?
Количество пользователей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 анонимных