Я хочу сделать мой MainWindow синглтоном, потому что я хочу упростить доступ к нему из всех других окон в моем приложении. Но я не мог заставить его работать. Вот что я сделал.
Как обычно, я сделал подрядчика MainWindow закрытым и создал общедоступное статическое свойство MainWindow Instance
для возврата статического экземпляра. Когда я просто запустил его без каких-либо других изменений, я получил ошибку «Нет доступного источника». Я погуглил в Интернете и нашел одну связанную тему на http: //www.netframeworkdev. com / windows-presentation-foundation-wpf / xamlc-singleton-class-80578.shtml . Однако я не смог заставить его работать так, как было предложено там. Некоторые предлагают изменить в MainWindow.xaml с
на
, что выглядит логичным. Однако, когда я это сделал, я получил массу ошибок компиляции (первая говорит, что пространство имен TestApp уже содержит определение MainWindow.)
Я нашел в Интернете много статей о том, как создать приложение с одним экземпляром. Я этого не ищу. Я просто хочу сделать свой MainWindow синглтоном. Я делал это в приложениях WinForm много раз.