2013-03-21 29 views
11

WPF tối ưu hóa chu trình Bố trí/Kết xuất trong một ứng dụng dễ bay hơi như thế nào?WPF tối ưu hóa chu trình bố cục/hiển thị như thế nào?

Ví dụ: hãy tưởng tượng tôi vô hiệu hóa một điều khiển tùy chỉnh hai lần liên tiếp nhanh chóng, nó sẽ hiển thị hai lần? Có vấn đề về hiệu suất khi Tốc độ dữ liệu/Thuộc tính cập nhật nhanh hơn tốc độ hiển thị chính không?

Trả lời

7

Dựa trên kinh nghiệm của tôi, tôi có thể nói rằng không có nó sẽ không hiển thị hai lần nếu nó đủ nhanh. Tôi không chắc chắn 100%, nhưng đây là lý do tại sao tôi nghĩ điều này:

Chúng tôi có một ứng dụng thực sự nặng (hàng nghìn điều khiển), nó là buồng lái máy bay, tất cả trong wpf, mỗi nút, công tắc, màn hình di chuyển bằng cử chỉ hoặc chuột.

Buồng lái là 10 000 pixel x 10 000 pixel và thực hiện Phóng to/thu nhỏ (bằng bánh xe chuột), xoay khi nhấn chuột phải.

Trước khi tối ưu hóa, nó đã rất lag, chậm, vì vậy mỗi "Zoom" bước, hoặc "Pan" bước mất khoảng 1 giây

Nếu tôi Phóng to 1 lần (Zoom * 1.2 chẳng hạn), phải mất 1 Nếu bạn zoom 10 lần (Zoom * 1,2 X 10), nó không mất 10 giây, có thể mất 2 giây tùy thuộc vào tốc độ bạn di chuyển và nó không hiển thị từng "bước zoom" mà nó hiển thị chỉ là người cuối cùng ...

+0

Wow .... 10k x 10k ... với thu phóng và hàng nghìn kiểm soát ... đó là giao diện người dùng helluva .. –

+1

Loại khiến tôi hơi sợ hãi để tham gia máy bay ... – Charleh

+0

Buồng lái này chỉ dùng để huấn luyện cơ bản, cho học sinh 'điều hướng' vào buồng lái mà không cần phải thực, được sử dụng trong lớp huấn luyện khi giáo viên giải thích bảng, giải thích nút phù thủy làm điều này và ... nó không được sử dụng cho một mô phỏng hoàn chỉnh – mlemay

Các vấn đề liên quan