Usuário com melhor resposta
Fechar aplicação silverlight for windows phone 7

Pergunta
-
Respostas
-
Infelizmente não existe... a única forma é usando o botão de hardware "Back", que quando está na primeira página da stack de navegação, simplesmente fecha a mesma aplicação!
Apenas uma excepção não tratada faz com que a aplicação termine, mas isso muito provavelmente levará a graves problemas depois de publicada a aplicação!
Pedro Lamas
DevScope | Senior Software Development Engineer & WP7 Development Speaker
www.pedrolamas.com | @pedrolamas- Marcado como Resposta Josinaldo Batista terça-feira, 5 de junho de 2012 10:41
-
Isso sim, podes usar o seguinte código:
while (NavigationService.CanGoBack) { NavigationService.RemoveBackEntry(); }
Podes mesmo fazer desde código em conjunto com o "Back" da seguinte forma:
protected override void OnBackKeyPress(System.ComponentModel.CancelEventArgs e) { if (MessageBox.Show("Do you want to exit the application?", "Exit", MessageBoxButton.OKCancel) == MessageBoxResult.OK) { while (NavigationService.CanGoBack) { NavigationService.RemoveBackEntry(); } } else { e.Cancel = true; } base.OnBackKeyPress(e); }
Pedro Lamas
DevScope | Senior Software Development Engineer & WP7 Development Speaker
www.pedrolamas.com | @pedrolamas- Marcado como Resposta Josinaldo Batista terça-feira, 5 de junho de 2012 10:41
Todas as Respostas
-
Infelizmente não existe... a única forma é usando o botão de hardware "Back", que quando está na primeira página da stack de navegação, simplesmente fecha a mesma aplicação!
Apenas uma excepção não tratada faz com que a aplicação termine, mas isso muito provavelmente levará a graves problemas depois de publicada a aplicação!
Pedro Lamas
DevScope | Senior Software Development Engineer & WP7 Development Speaker
www.pedrolamas.com | @pedrolamas- Marcado como Resposta Josinaldo Batista terça-feira, 5 de junho de 2012 10:41
-
Muito obrigado pela resposta Pedro, mas já que não existe como encerrar a aplicação via código, existe alguma forma de remover o historico do app para que a página que eu esteja sejá considerada a primeira pagina do aplicativo?
- Editado Josinaldo Batista terça-feira, 5 de junho de 2012 10:29 erro na escrita
-
Isso sim, podes usar o seguinte código:
while (NavigationService.CanGoBack) { NavigationService.RemoveBackEntry(); }
Podes mesmo fazer desde código em conjunto com o "Back" da seguinte forma:
protected override void OnBackKeyPress(System.ComponentModel.CancelEventArgs e) { if (MessageBox.Show("Do you want to exit the application?", "Exit", MessageBoxButton.OKCancel) == MessageBoxResult.OK) { while (NavigationService.CanGoBack) { NavigationService.RemoveBackEntry(); } } else { e.Cancel = true; } base.OnBackKeyPress(e); }
Pedro Lamas
DevScope | Senior Software Development Engineer & WP7 Development Speaker
www.pedrolamas.com | @pedrolamas- Marcado como Resposta Josinaldo Batista terça-feira, 5 de junho de 2012 10:41
-
-
Essa história de que não dá pra fechar um aplicativo depende do ponto de vista.
Se for tratar os dados antes de fechar, faça isso e depois lance uma exceção.
Por exemplo:
private void mnSair_Click(object sender, EventArgs e)
{
var result = MessageBox.Show("deseja sair do aplicativo ?",
"seu aplicativo", MessageBoxButton.OKCancel);
if (result == MessageBoxResult.OK)
{
// Do not cancel navigation
while (NavigationService.BackStack.Any())
{
NavigationService.RemoveBackEntry();
}
base.OnBackKeyPress(new CancelEventArgs());// TRATAR AQUI O ARMAZENAMENTO DE DADOS ANTES DE SAIR
int zero = 0;
var res = 1 / zero;
}
}