@sitev_ru
sitev.ru - мой блог ...

Почему тормозит TreeView?

При большом количестве веток дерева, у меня начинает тормозить TreeView, а точнее, обычная операция присвоения имени ветки:

treeView1.SelectedNode.Text = "hello!";

Тестирую на разных компьютерах. Эта операция может занимать от 100 мс до 1 сек при 35 тыс веток. Если больше, то время пропорционально увеличивается. Можно ли решить эту проблему?
  • Вопрос задан
  • 134 просмотра
Пригласить эксперта
Ответы на вопрос 2
Vlad_IT
@Vlad_IT
Front-end разработчик
Для TreeView у WPF есть виртуализация, которая позволяет контейнеру создавать только те элементы, которые находятся в зове видимости скролла. Для Windows Forms такого нет, и поэтому все элементы обрабатываются. Нужно писать свой контрол, на сколько я понимаю.
Ответ написан
Комментировать
petermzg
@petermzg
Самый лучший программист
Если у вас стандартный виндовый TreeView. То есть используете WinForms.
treeView1.BeginUpdate();
// тут код ваших изменений
treeView1.EndUpdate();
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы