WPF Найти окно экземпляра - PullRequest
1 голос
/ 27 мая 2011

Я создал экземпляр окна внутри класса, но я не могу получить доступ к экземпляру окна непосредственно из моего другого класса.

Есть ли способ ссылки на экземпляр окна, который у меня уже есть?созданный с использованием метода C #, возможно, поиск в открытых окнах приложения, пока он не найдет окно Dashboard, к которому я пытаюсь получить доступ?

Ответы [ 2 ]

5 голосов
/ 04 августа 2012
System.Reflection.Assembly assemby = System.Reflection.Assembly.GetExecutingAssembly();
System.Type[] types = assemby.GetTypes();
var varWindows = types.ToList()
    .Where(current => current.BaseType == typeof(Window));
MessageBox.Show(varWindows.Count().ToString());

Application.Current.Windows возвращает нам все экземпляры окон, но приведенный выше код дает нам все окна.

5 голосов
/ 27 мая 2011

Application.Current.Windows дает вам все окна, не должно быть трудно найти, используя его тип.

( Как заметил Эд, это не похоже на очень хороший дизайн, поэтому вы можете подумать о том, как можно добиться успеха без грязных оконных ссылок )

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...