Tôi đã biết rằng bằng cách thêm TreeView.BeginUpdate sẽ ngăn chặn nhấp nháy của treeview, nhưng khi tôi thêm nó vào dự án của tôi tất cả các nút của treeview của tôi biến mất, có thể bất kỳ cơ thể cho tôi biết lý do tại sao nó xảy ra, đây là đoạn mã mà tôi đã qua sử dụng TreeView.BeginUpdate và TreeView.EndUpdateNhấp nháy trong nháy mắt?
TreeNode treeNode = new TreeNode("Windows");
treeView1.Nodes.Add(treeNode);
//
// Another node following the first node.
//
treeNode = new TreeNode("Linux");
treeView1.Nodes.Add(treeNode);
//
// Create two child nodes and put them in an array.
// ... Add the third node, and specify these as its children.
//
TreeNode node2 = new TreeNode("C#");
TreeNode node3 = new TreeNode("VB.NET");
TreeNode[] array = new TreeNode[] { node2, node3 };
//
// Final node.
//
treeNode = new TreeNode("Dot Net Perls", array);
treeView1.Nodes.Add(treeNode);
Điều đầu tiên không đúng - bạn đang làm 'BeginUpdate' /' EndUpdate' trong vòng lặp - và tệ hơn, 'EndUpdate' được lồng trong một số mã có điều kiện - tôi thường mong đợi thấy điều gì đó ngăn chặn các cập nhật trực quan được bao quanh toàn bộ các bản cập nhật (theo ví dụ thứ hai của bạn) –
bất chấp mã có vấn đề, có vẻ như bạn đang cố khắc phục một triệu chứng của sự cố. Là câu hỏi thực sự tại sao bạn có được nhấp nháy ở nơi đầu tiên? hoặc không có nhấp nháy? –
nếu tôi sử dụng ngay trên việc bổ sung các nút i có nghĩa là (.Nodes.Add) đó sẽ là đủ ?? – vettori