2010-01-21 7 views
6

Soy nuevo en Blend & Sketchflow. Espero que alguien pueda ayudarme.Sketchflow Navigation

He estado haciendo un proyecto de boceto y he configurado varios botones que se desplazan a pantallas específicas (agradable y fácil).

Ahora la captura ...

He hecho un menú genérico en la parte superior, y han puesto un botón en él, y lo que quiero lograr con esto es que si alguien hace clic en ese botón, en vez de navegar a una pantalla específica, simplemente navega a la pantalla anterior que se vio en sketchflow.

¿Alguien sabe si esto es posible? Y si es así, ¿cómo lo lograría?

Respuesta

7

Usa el comportamiento "Atrás". Hay 2 maneras fáciles de aplicar este comportamiento a su botón:

  1. haga clic en el botón derecho en la mesa de trabajo, seleccionar "Navegar hacia" -> "Volver" o
  2. Abra el panel de activos, SketchFlow-> Comportamientos-> NavigateBackAction, arrastre este comportamiento a su botón.

el XAML debe ser similar a esto:

<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> 

+0

Gracias ... Me siento como un verdadero novato –

5

que estaba buscando la misma pregunta, pero quiero navegar desde C# .NET.

me encontré con la siguiente solución:

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

en este forum.

Cuestiones relacionadas