2010-03-17 25 views
11

Splashscreen/Loading-Window trong ứng dụng WPF của tôi được đặt thành Topmost = "True". Bây giờ cửa sổ này ở trên đầu trang của tất cả các cửa sổ khác ngay cả khi bạn chuyển sang ứng dụng khác (vì tải sẽ mất một thời gian). Tôi không muốn loại hành vi này.WPF-Window Topmost chỉ dành cho ứng dụng của riêng mình?

Nếu tôi đặt Trên cùng = "False" cửa sổ ở trên cùng không hề. Nhưng nếu bạn chuyển về ứng dụng của tôi sau khi làm việc với một ứng dụng khác, đôi khi khách hàng của tôi không nhận ra rằng Loading-Windows vẫn đang hoạt động. Ứng dụng có vẻ không phản hồi vì Loading-Window trong nền vẫn là cửa sổ đang hoạt động và nó là phương thức.

Tôi muốn có cửa sổ tải lên trên cùng nhưng chỉ khi ứng dụng của tôi ở nền trước. Nếu bạn chuyển sang chương trình khác, cửa sổ sẽ biến mất và xuất hiện trở lại trên cùng khi bạn quay lại.

+0

Chỉ vì tò mò tại sao bạn tải các cửa sổ khác hoàn toàn trong khi màn hình splash của bạn được hiển thị? Nói chung khi một ứng dụng sử dụng màn hình Splash, đó là cửa sổ hiển thị duy nhất cho ứng dụng đó tại thời điểm đó .... – BFree

+0

Vì quá trình tải mất quá lâu nên sếp của tôi muốn một số dữ liệu đã hiển thị trong cửa sổ chính. Bạn không thể tương tác với dữ liệu nhưng ít nhất bạn có thể xem nó. – TalkingCode

Trả lời

10

Bạn có thể thử sử dụng thuộc tính "Chủ sở hữu" của cửa sổ, với màn hình giật gân đó sẽ luôn chồng lấp lên các cửa sổ khác.

+0

Trong ứng dụng của tôi, MainWindow cần thời gian để tạo, do đó, nó chưa được tạo ra trong khi màn hình splash được hiển thị. Vì vậy, tôi không thể đặt chủ sở hữu cửa sổ màn hình của cửa sổ mở rộng thành cửa sổ chính. –

2

Tôi nghĩ có thể thay đổi trong mẫu tải của MainWindow của bạn có thể hữu ích. Nếu bạn có thể đưa vào tốn thời gian một phần của tải cửa sổ trên một sợi nền sau đó bạn có thể đi con đường này:

  1. Hiện MainWindow xương rỗng hoặc trần (trống lĩnh vực/lưới vv)
  2. Launch phương pháp tải async để lấy dữ liệu và điền vào cửa sổ chính
  3. Tạo màn hình giật gân, đặt chủ sở hữu thành tự hiển thị và hiển thị
  4. đảm bảo đóng màn hình giật gân khi tải hoàn tất.

nên giữ văng trên đầu trong khi tải đang được xử lý.

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