Навигация по SketchFlow - PullRequest
       13

Навигация по SketchFlow

7 голосов
/ 21 января 2010

Я новичок в Blend & Sketchflow. Я надеюсь, что кто-то может мне помочь.

Я выполняю проект sketchflow и настроил несколько кнопок для навигации по конкретным экранам (красиво и просто).

Теперь подвох ...

Я создал общее меню вверху и наложил на него кнопку, и я хочу добиться с ней того, чтобы, если кто-то нажимает на эту кнопку, вместо перехода на конкретный экран, он просто перемещается предыдущий экран, который был просмотрен в sketchflow.

Кто-нибудь знает, возможно ли это? И если да, то как бы я этого достиг?

Ответы [ 2 ]

8 голосов
/ 21 января 2010

Используйте поведение «назад». Есть 2 простых способа применить это поведение к вашей кнопке:

  1. Щелкните правой кнопкой мыши на артборде, выберите «Перейти к» -> «Назад» или
  2. Откройте панель ресурсов, SketchFlow-> Поведения-> NavigateBackAction, перетащите это поведение на свою кнопку.

xaml должен выглядеть примерно так:

<UserControl
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity" xmlns:pb="clr-namespace:Microsoft.Expression.Prototyping.Behavior;assembly=Microsoft.Expression.Prototyping.Interactivity"
x:Class="SilverlightPrototype12Screens.Screen_1"
Width="640" Height="480">

<Grid x:Name="LayoutRoot" Background="White">
    <Button Height="66" Margin="241,68,275,0" VerticalAlignment="Top" Content="Button">
        <i:Interaction.Triggers>
            <i:EventTrigger EventName="Click">
                <pb:NavigateBackAction/>
            </i:EventTrigger>
        </i:Interaction.Triggers>
    </Button>
</Grid>

6 голосов
/ 23 июня 2010

Я искал тот же вопрос, но хочу перейти с c # .net.

Я нашел следующее решение:

private void Navigate(object sender, RoutedEventArgs e)
{
   Microsoft.Expression.Prototyping.Services.PlayerContext.Instance.ActiveNavigationViewModel.NavigateToScreen("WpfPrototype2Screens.Screen_2", true);
}

на этом форуме .

...