![]() |
Модераторы: Partizan, gambit |
![]() ![]() ![]() |
|
NilovSerge |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 54 Регистрация: 6.10.2007 Репутация: нет Всего: нет |
1)У меня элементы TreeView редактируется в отдельном окне. Отредактировав или создав новый элемент
я хочу свои изменения отобразить в TreeView. Уменя работает вставка нового элемента но при редактировании получаю ошибку: "No parameterless constructor defined for this object" Если я не ошибаюсь то редатирование элемента надо так: Клонировать редактируемый обьект запомнить его индекс удалить и внеся изменения пересоздать заново Делаю так: if (!isInsert) { // edit existing dep DepsTreeNode CopyObj = (DepsTreeNode)CurrentNode.Clone(); //Здесь ошибка CopyObj._Dep._Name = tbName.Text; int CopyObjIndex = DepstreeView.SelectedNode.Index; CurrentNode.Remove(); CurrentNode.Nodes.Insert(CopyObjIndex, CopyObj); CurrentNode.Expand(); } else {// add new Эта часть работает Deps NewDep = new Deps( /*int pDepID*/ this.DepId, /*string pName*/ tbName.Text, /*int pParentDepId*/ this.ParentDepId); CurrentNode.Nodes.Add(new DepsTreeNode(NewDep)); DepsTreeNode NewNode = (DepsTreeNode)CurrentNode.Nodes[CurrentNode.Nodes.Count - 1]; CurrentNode.Expand(); } DepsTreeNode это класс наследуемый от TreeNode. Я просмотрел в MSDN Clone() - у него нет никаких параметров. В чем может быть причина ? 2) двойным кликом на элементе TreeView я загружаю все строки в DataGridView. При этом если убрать фокус с TreeView, то текущий элемент не подсвечивается. Как можно выделить текущий элемент TreeView чтоб он был всегда выделен(Возможно картинкой)? Заранее спасибо |
|||
|
||||
1stain |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 486 Регистрация: 30.7.2007 Где: Киев - Харьков Репутация: 3 Всего: 40 |
зачем столько сложностей? по-моему проще сделать у своего тринода паблик свойства и отразить их в юзерконтроле, связанном с этим типом нода, оттуда же и редактировать. -------------------- Все знают, что это невозможно. Но вот приходит невежда, которому это неизвестно - он-то и делает открытие. (Albert Einstein) ![]() |
|||
|
||||
NilovSerge |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 54 Регистрация: 6.10.2007 Репутация: нет Всего: нет |
да действительно проще:
Делаю treeView.SelectedNode.Text = "NewText"; и работает... А насчет 2) и выделении активного TreeNode при фокусироании другого контрола на форме идей нет ? |
|||
|
||||
1stain |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 486 Регистрация: 30.7.2007 Где: Киев - Харьков Репутация: 3 Всего: 40 |
щас тебе модераторы все объяснят
![]() пока никого нет, лови код
подпишись в TreeView на соответствующие события Это сообщение отредактировал(а) 1stain - 6.11.2007, 14:16 -------------------- Все знают, что это невозможно. Но вот приходит невежда, которому это неизвестно - он-то и делает открытие. (Albert Einstein) ![]() |
|||
|
||||
![]() ![]() ![]() |
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | .NET для новичков | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |