NavigationService.Navigating Evento
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Ocorre quando uma nova navegação é solicitada.
public:
event System::Windows::Navigation::NavigatingCancelEventHandler ^ Navigating;
public event System.Windows.Navigation.NavigatingCancelEventHandler Navigating;
member this.Navigating : System.Windows.Navigation.NavigatingCancelEventHandler
Public Custom Event Navigating As NavigatingCancelEventHandler
Tipo de evento
Exemplos
O exemplo a seguir mostra como lidar Navigating para detectar se uma solicitação para atualizar o conteúdo estático foi feita e, nesse caso, cancelar a solicitação.
void NavigationService_Navigating(object sender, NavigatingCancelEventArgs e)
{
// Don't allow refreshing of a static page
if ((e.NavigationMode == NavigationMode.Refresh) &&
(e.Uri.OriginalString == "StaticPage.xaml"))
{
e.Cancel = true;
}
}
Private Sub NavigationService_Navigating(ByVal sender As Object, ByVal e As NavigatingCancelEventArgs)
' Don't allow refreshing of a static page
If (e.NavigationMode = NavigationMode.Refresh) AndAlso (e.Uri.OriginalString = "StaticPage.xaml") Then
e.Cancel = True
End If
End Sub
Comentários
Navigating é gerado quando uma nova navegação é solicitada, mas antes que o conteúdo de origem seja solicitado, inclusive quando:
Navigate é chamado.
GoBack ou GoForward é chamado (ou uma entrada é selecionada em uma interface do usuário de navegação).
Um fragmento de conteúdo é navegado.
Você manipulará Navigating se precisar descobrir informações pertinentes sobre a solicitação de navegação antes do início da navegação. Essas informações estão disponíveis no NavigatingCancelEventArgs objeto que é passado para o Navigating manipulador de eventos.
Um WebRequest objeto para a navegação é criado e disponível a partir do NavigatingCancelEventArgs parâmetro ; como a solicitação real não foi feita neste momento, você pode reconfigurar o WebRequest objeto, se necessário.
Você também manipula NavigatingCancelEventArgs para cancelar a navegação, se necessário, definindo Cancel como true. Se você cancelar a navegação, nenhum outro evento de navegação será gerado.
Observação
Se o aplicativo estiver hospedado no navegador, você não poderá impedir que o usuário navegue para longe do aplicativo cancelando o Navigating evento.
Depois que a primeira parte do conteúdo é navegada por um navegador (NavigationWindow, Frame), cada parte do conteúdo que é navegado para longe é adicionada ao histórico de navegação. Se você precisar salvar informações de estado sobre o conteúdo do qual está navegando, poderá adicionar o estado à entrada de diário para esse conteúdo configurando ContentStateToSave com um CustomContentState objeto .
Observação
Quando NavigationService gera Navigating, ele também gera Application.Navigating evento no Application objeto .