Niektóre osoby nie optymalizują się, dopóki nie będą potrzebne. W każdym razie w tej sprawie zasiłek lub kara za wykonanie jest prawdopodobnie minimalna. Innymi słowy, prawdopodobnie nie musisz się martwić, będziesz mieć inne rzeczy do optymalizacji.
ten powróci lub ustawić okna głównego aplikacji:
// http://msdn.microsoft.com/en-us/library/system.windows.application.mainwindow.aspx
var w = Application.Current.MainWindow;
to wykorzystać, aby powrócić odniesienie do okna kontrola jest zlokalizowany:
// http://msdn.microsoft.com/library/vstudio/system.windows.window.getwindow.aspx
Window.GetWindow(theDependencyObject);
mówiłeś, że trzeba uzyskać dostęp do okna, w którym znajduje się dana kontrolka. Wtedy myślę, że bardziej właściwe jest semantycznie:
Window.GetWindow(theDependencyObject);
Jeśli te dwa stwierdzenia są po prostu uzyskiwania dostępu do właściwości, wówczas liczba okien miałem byłby znikomy. Mam rację? –
Prawidłowe. Wskazanie jednego okna było bardziej poprawne dla podejścia. To znaczy. jeśli masz wiele okien tylko jeden będzie MainWindow, podczas gdy różne okna mogą być zwrócone przez GetWindow (oczywiście). – Slugart
Tak, wiem o pojedynczym MainWindow. Chciałem tylko wyjaśnić przyszłe referencje. –