Tôi hiện đang làm việc trên một chương trình sử dụng cấu trúc phức tạp của các điều khiển biểu mẫu lồng nhau thay đổi động khi người dùng thực hiện các lựa chọn nhất định. Để đi vào chi tiết hơn về bố cục cụ thể của các điều khiển sẽ được mở rộng cho câu hỏi này.Làm cách nào để khắc phục các vấn đề nhấp nháy kiểm soát dạng lồng nhau
Khi bao giờ lựa chọn được thực hiện, rất nhiều cập nhật được thực hiện cho mô hình cơ bản được kiểm soát bởi các điều khiển người dùng. Điều này sau đó dẫn đến hàng loạt các thay đổi tương ứng về kích thước/vị trí/khả năng hiển thị của các điều khiển được hiển thị. Tất cả những thay đổi này dẫn đến một nhấp nháy dữ dội trên các điều khiển trên màn hình. Tôi cần phải bằng cách nào đó sửa lỗi này để mỗi khi người dùng thực hiện một lựa chọn màn hình về cơ bản là đóng băng cho đến khi tất cả các cập nhật kiểm soát đã hoàn thành.
Tôi đã cố gắng sử dụng các phương thức Control.SuspendLayout/Control.ResumeLayout ở nhiều nơi và cách khác nhau và tôi không thể loại bỏ sự nhấp nháy điên rồ. Tôi nghĩ rằng đình chỉ bố trí trên kiểm soát root trong những thay đổi sẽ khắc phục được vấn đề nhưng nó xuất hiện rằng SuspendLayout này không giúp đỡ khi điều khiển con được thay đổi.
Tôi có cần sử dụng một số cách tiếp cận khác thay vì SuspendLayout không? Có cách nào tôi có thể gỡ lỗi SuspendLayout để xem lý do tại sao nó không xuất hiện để được xếp tầng cho tất cả các điều khiển con?
câu trả lời này phù hợp với tôi http://stackoverflow.com/questions/487661/how-do-i-suspend-painting-for-a-control-and-its-children – wal