Tôi đang viết một giao diện người dùng dữ liệu đơn giản bằng cách sử dụng tiêu chuẩn .Net databinding đến một DataSet đã nhập từ SQL Server.Chạy một hộp thoại phương thức trên một chủ đề không phải là giao diện người dùng
Tôi có nút tải lại gọi Fill
trên tất cả DataAdapters để nhận dữ liệu mới từ cơ sở dữ liệu (trong trường hợp người dùng khác thay đổi dữ liệu).
Quá trình này mất một khoảng thời gian, trong đó giao diện người dùng bị đóng băng. Nó phải được chạy trên thread UI hoặc các trình xử lý sự kiện databinding ném ngoại lệ cross-thread.
Tôi muốn hiển thị hộp thoại "Vui lòng đợi" trên một chuỗi nền (để có thể hoạt ảnh) trong khi chuỗi giao diện người dùng kết nối với cơ sở dữ liệu.
Làm cách nào để hiển thị hộp thoại phương thức trên chuỗi không phải là giao diện người dùng?
EDIT: Tôi biết rằng thực hành tốt nhất là để chạy các hoạt động ở chế độ nền, nhưng tôi không thể làm điều đó bởi vì trong những sự kiện liên kết dữ liệu.
Như tôi đã giải thích trong câu hỏi, tôi không thể. Tôi biết rõ rằng đây là phương pháp hay nhất. – SLaks
Tôi nghĩ bạn vẫn có thể. Nó chỉ có nghĩa là luồng nền không nên cập nhật trực tiếp dữ liệu. Truy xuất chúng, đóng gói chúng và ủy quyền cho chủ đề chính để cập nhật giao diện người dùng – mfeingold
Tôi hiểu tình trạng khó xử của bạn, nhưng tôi vẫn nghĩ những gì tôi đề xuất là tốt hơn (ít rắc rối) hơn thay thế – mfeingold