tôi nhận được một ngoại lệ nào trong ứng dụng của tôi khi tôi đóng cửa sổ cuối cùng:Unhandled NullReference ngoại lệ khi đóng WPF ứng dụng
Một ngoại lệ unhandled của loại 'System.NullReferenceException' xảy ra ở PresentationFramework.dll
Thông tin bổ sung: Tham chiếu đối tượng không được đặt thành phiên bản đối tượng .
Điều này chỉ xảy ra nếu, trong suốt thời gian của ứng dụng, tôi mở một cửa sổ con thông qua một quá trình nhất định mà tôi đã thiết lập. Cửa sổ tồn tại trong một assembly khác được nạp tại thời gian chạy động với MEF, và sau đó được khởi tạo với Castle. Nếu sau đó tôi gọi một phương thức nào đó, nó tạo ra một luồng STA mới và mở một cửa sổ hộp thoại WPF.
Một số hãy cẩn thận:
- này chỉ xảy ra trên một số máy/môi trường (Tôi không thể phân biệt một mô hình mặc dù)
- Tôi có một handler UnhandledException trên phối cho các ứng dụng mà bắt tất cả các ngoại lệ chưa được giải quyết. Đây không phải là bắt gặp bởi điều đó.
Cuộc gọi chồng là:
PresentationFramework.dll!MS.Internal.Controls.ConnectionPointCookie.Disconnect()
PresentationFramework.dll!MS.Internal.Controls.ConnectionPointCookie.Finalize()
Có ai thấy điều này trước đây, hoặc bất cứ ai sẽ biết làm thế nào để gỡ lỗi này? Thật kỳ lạ là không có ngăn xếp cuộc gọi và nó xảy ra ngay khi chương trình đang thoát.
Tôi nghĩ bạn cần chỉnh sửa câu hỏi này để bao gồm ShutdownMode trong tệp app.xaml của bạn. –
Thuộc tính 'ShutdownMode' được đặt thành' OnMainWindowClose', tuy nhiên, trong khi khởi động có một vài hộp thoại có thể được kích hoạt, vì vậy tạm thời chuyển sang 'OnExplicitShutdown' trong khi khởi động ứng dụng, nhưng nó luôn ** được chuyển trở lại để 'OnMainWindowĐóng' trước khi cửa sổ chính thậm chí mở ra. – qJake
Tôi không biết điều gì gây ra ngoại lệ, nhưng tôi sẽ cố gắng gỡ lỗi nó bằng cách khởi động nó từ một ứng dụng khác chuyển hướng các luồng Stderr/Stdio và hy vọng (hoàn toàn * hy vọng *) có một vật phẩm trong các luồng đó cung cấp một đầu mối . –