В своем файле App.xaml.cs вы можете программно изменить, какой файл Window.xaml вы хотите показать при запуске.Вот упрощенный пример.
protected override void OnStartup(StartupEventArgs e)
{
base.OnStartup(e);
System.Windows.Window startupWindow = null;
if(useLargeMode)
{
startupWindow = new LargeMainWindow();
}
else
{
startupWindow = new SmallMainWindow();
}
window.Show();
}
Вы также можете сделать это, изменив StartupUri в файле App.xaml, но это, очевидно, будет сложнее изменить во время выполнения.*
Я не пробовал связывать свойство в объявлении приложения в XAML, но VS 2010 не жалуется на это.Меня беспокоит то, что приложение установило свой текстовый текст достаточно рано для корректной работы.Попробуйте и дайте нам знать, как это работает.:)
<Application x:Class="Main.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
StartupUri="{Binding StartupWindow}">