Форум программистов, компьютерный форум, киберфорум
C#: WPF, UWP и Silverlight
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.72/29: Рейтинг темы: голосов - 29, средняя оценка - 4.72
87 / 86 / 13
Регистрация: 21.10.2010
Сообщений: 349

Добавление элемента в TreeView

24.02.2011, 17:53. Показов 6079. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. Подскажите, как добавить элемент в TreeView, если приложение запущено.
То есть имеется меню, которое привязано к TreeView, в этом меню имеется пункт дообавить запись, при добавлении новой записи я должен ее как-то назвать. Проще говоря добавление элемента должно происходить, как добавление каталога в ОС.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
24.02.2011, 17:53
Ответы с готовыми решениями:

WPF treeview добавление узлов
Имеется treeview. Как программно добавлять узлы? Мне необходимо добавить родительский узел + дочерний + дочерний к предыдущему уровню. ...

Добавление элемента в treeView
Добрый день! Помогите, пожалуйста. Есть дерево treeview. В нем есть три главные ветки. В этих ветках есть множество дочерних. Есть...

Списки. Инициализация, добавление элемента в начало и после другого элемента. Удаление элемента
uses crt; type list= ^item; item=record data: integer; next:list; end; var l:list; procedure print;

15
Программист
 Аватар для Сергей.NET
416 / 416 / 7
Регистрация: 10.09.2010
Сообщений: 1,344
24.02.2011, 18:11
Так ?
VB.NET
1
2
3
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles Button1.Click
        TreeView1.Items.Add("Microsoft")
    End Sub
0
87 / 86 / 13
Регистрация: 21.10.2010
Сообщений: 349
24.02.2011, 18:25  [ТС]
Цитата Сообщение от Сергей.NET Посмотреть сообщение
Так ?
VB.NET
1
2
3
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles Button1.Click
        TreeView1.Items.Add("Microsoft")
    End Sub
Не совсем, я должен имя сам писать, ведь когда каталог создается предлагается изменяить его имя, и меняешь а тут как?
0
Программист
 Аватар для Сергей.NET
416 / 416 / 7
Регистрация: 10.09.2010
Сообщений: 1,344
24.02.2011, 18:27
То есть ты хочешь например писать имя текстбоксе, а потом нажать кнопку добавить?
0
87 / 86 / 13
Регистрация: 21.10.2010
Сообщений: 349
24.02.2011, 18:31  [ТС]
Нет я хочу сделать так, при нажатии на пункт меню в TreeView добавляется пустой TreeViewItem элемент с курсором, в этот элемент мы пишем имя прям в самом TreeView, нажимаем на Enter или на левую кнопку мыши в любое место и элементу, который создался присваивается имя, которое мы написали. Возможно ли такое сделать?
0
 Аватар для Enma Ai
20 / 18 / 4
Регистрация: 04.12.2009
Сообщений: 82
24.02.2011, 18:35
может просто закрученно сделать ? например при клике на treeviewitem добавляется пустой item и на его же месте появляется текстбокс. при нажатии "ентера" в текстбоксе он пропадает а наш item получает имя из текстбокса...

P.S. не удивлюсь если именно так и реализовано в проводнике
0
Программист
 Аватар для Сергей.NET
416 / 416 / 7
Регистрация: 10.09.2010
Сообщений: 1,344
24.02.2011, 18:38
Vangok, можно сделать так, как предложил
Enma Ai, лично я такого способа не знаю чтобы дать имя тривию прямо "на месте"
0
87 / 86 / 13
Регистрация: 21.10.2010
Сообщений: 349
24.02.2011, 18:40  [ТС]
Цитата Сообщение от Enma Ai Посмотреть сообщение
может просто закрученно сделать ? например при клике на treeviewitem добавляется пустой item и на его же месте появляется текстбокс. при нажатии "ентера" в текстбоксе он пропадает а наш item получает имя из текстбокса...

P.S. не удивлюсь если именно так и реализовано в проводнике
На самом деле так и реализовано, но мне бы пример, сложно это как-то.

Добавлено через 1 минуту
Цитата Сообщение от Сергей.NET Посмотреть сообщение
Vangok, можно сделать так, как предложил
Enma Ai, лично я такого способа не знаю чтобы дать имя тривию прямо "на месте"
Не имя TreeView дать, а дать Header для TreeViewItem.
0
Программист
 Аватар для Сергей.NET
416 / 416 / 7
Регистрация: 10.09.2010
Сообщений: 1,344
24.02.2011, 18:52
Посмотри что у меня получилось
дерево.zip
1
87 / 86 / 13
Регистрация: 21.10.2010
Сообщений: 349
24.02.2011, 18:56  [ТС]
Ну да как-то так, правда надо подумать как текстбокс смещать под элементы item'ов, ну и придумать как подэлементы таким образом делать.
0
Программист
 Аватар для Сергей.NET
416 / 416 / 7
Регистрация: 10.09.2010
Сообщений: 1,344
24.02.2011, 18:58
а ты после добавления текста нажал на ентер?
0
87 / 86 / 13
Регистрация: 21.10.2010
Сообщений: 349
24.02.2011, 18:59  [ТС]
Ну да.

Добавлено через 52 секунды
Просто там в коде Margin задаются фиксированные данные, а необходимо задавать динамически-изменяемые.
0
 Аватар для Enma Ai
20 / 18 / 4
Регистрация: 04.12.2009
Сообщений: 82
24.02.2011, 20:05
Цитата Сообщение от Vangok Посмотреть сообщение
Ну да.

Добавлено через 52 секунды
Просто там в коде Margin задаются фиксированные данные, а необходимо задавать динамически-изменяемые.
а у treeviewitem'a есть св-во margin ? елси да то можно его брать )
0
Программист
 Аватар для Сергей.NET
416 / 416 / 7
Регистрация: 10.09.2010
Сообщений: 1,344
24.02.2011, 20:08
Цитата Сообщение от Enma Ai Посмотреть сообщение
а у treeviewitem'a есть св-во margin ?
есть, но думаю нужно какой то другой способ придумать
0
87 / 86 / 13
Регистрация: 21.10.2010
Сообщений: 349
24.02.2011, 20:22  [ТС]
Цитата Сообщение от Enma Ai Посмотреть сообщение
а у treeviewitem'a есть св-во margin ? елси да то можно его брать )

У TreeView свойство Margin всегда равно {0,0,0,0}, тоже касается и item.
А вот свойства которое отвечает за определение верхнего элемента нету. есть только SelectedItem
Вот такой код подставляет текстбокс на место переименовываемого item'а:

C#
1
((TreeViewItem)(Tree.SelectedItem)).Header = texRename;
0
84 / 84 / 14
Регистрация: 15.02.2011
Сообщений: 252
26.02.2011, 14:19
В TVI можно вложить любой компонент. Тот же textBox и скрыть его границы.
И у TVI было свойство BeginEdit и EndEdit....
Или же предлагаю такой сценарий:
  1. Создали TVI
  2. Создали TextBox (TextBlock). Задали свойства: поля скрыты и режим readonly. На событие GetFocus (кажись так) устанавливаем отображение границ и переход в режим редактирования.
  3. Вкладываем в TVI этот textBox
  4. Добавляем TVI d TreeView
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
26.02.2011, 14:19
Помогаю со студенческими работами здесь

Многопоточность, добавление в TreeView
В многопоточном приложении winforms есть treeview, нужно в него добавить обьекты одного из потоков, вылетает исключение "Action being...

Добавление узлов в TreeView
Всем привет. На форме есть компоненты: TreeView, TextBox, Button. При нажатию на кнопку мы добавляем корневой нод. При двойном нажатии...

Добавление в treeView данные из БД
Имеется БД с ссылками на изображения типа "Folder1\Folder2\Image1.jpg". В программе ссылки разбиваются на части т.е. Folder1, Folder2 и...

TreeView, ComboBox - добавление
Всем снова здравствуйте. Обращаюсь с помощью к вам уважаемые товарищи :) В своей программе хочу реализовать следующую вещь: на форме...

Добавление записей в TreeView
Всем здрасти ) на форме есть TreeView, edit, ComboBox и button в TreeView есть несколько строк поисковики почта разное ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru