Я получил ссылку на окно, используя Reflection:
public static Window WindowByName(string strWindowName)
{
if (string.IsNullOrEmpty(strWindowName)) return null;
Assembly asm = Assembly.GetExecutingAssembly();
string strFullyQualifiedName = asm.GetName().Name + "." + strWindowName;
object obj = asm.CreateInstance(strFullyQualifiedName);
if (obj != null)
return obj as Window;
else
return null;
}
с помощью вышеуказанного метода я получаю ссылку на WinMain.xaml, а затем обращаюсь к его элементам управления, используя метод FindName из кода PageRutas.xaml, например:
// Retrieve reference WinMain.xaml reference
Window win = cWindow.WindowByName("WinMain");
// Retrieve listbox reference
System.Windows.Controls.ListBox lstbox =
(System.Windows.Controls.ListBox)win.FindName("LayoutListBox");
// Modifying IsEnabled property
lstbox.IsEnabled = false;
но теперь ... У меня есть другая проблема .... свойство изменилось на false после выполнения lstbox.IsEnable = false; но что-то странное происходит потому, что пользовательский интерфейс WinMain.xaml, кажется, игнорирует внесенные мной изменения (список не отключен в пользовательском интерфейсе). Что происходит? кто-нибудь может мне помочь?
Спасибо.