Используйте разностные страницы XAML в XBAP - PullRequest
1 голос
/ 15 ноября 2010

Как мне перейти к переключению страницы XAML основного дисплея, которая используется в XBAP.Разница лишь в том, что мне нужен больший режим и меньший режим, но с теми же элементами управления (некоторые скрыты).

1 Ответ

1 голос
/ 15 ноября 2010

В своем файле 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}">
...