Bonjour,
Le framework 2.0 (et supérieur) est beaucoup plus lent quand on met à jour le texte d'un TreeNode.
J'ai écrit un exemple très simple (ci-dessous) :
Ma WinForm contient :
- un TreeView avec des TreeNodes.
- une TextBox
Sur l'évènement TextChanged de ma TextBox, je met à jour le texte du TreeNode sélectionné.
Sous .Net 1.1, le texte du TreeNode se met à jour instantannément et on ne ressent pas de lenteur lors de la saisie dans le TextBox.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33 public partial class Form1 : Form { public Form1() { InitializeComponent(); for (int i = 0; i < 100; i++) { TreeNode aTreeNode_Lvl1 = new TreeNode("Node " + i); for (int j = 0; j < 10; j++) { TreeNode aTreeNode_Lvl2 = new TreeNode("Node " + j); for (int k = 0; k < 10; k++) { TreeNode aTreeNode_Lvl3 = new TreeNode("Node " + k); aTreeNode_Lvl2.Nodes.Add(aTreeNode_Lvl3); } aTreeNode_Lvl1.Nodes.Add(aTreeNode_Lvl2); } treeView1.Nodes.Add(aTreeNode_Lvl1); } } private void textBox1_TextChanged(object sender, EventArgs e) { treeView1.BeginUpdate(); if (treeView1.SelectedNode != null) { treeView1.SelectedNode.Text = textBox1.Text; } treeView1.EndUpdate(); } }
Sous .Net 2.0, on ressent une lenteur lors de la saisie dans le TextBox.
Est-ce que quelqu'un a déjà constaté ce problème ?
Est-ce que quelqu'un a une solution ?
D'avance merci.
Partager