Pregunta

Estoy tratando de cerrar un mensaje de mensajes en mi aplicación WinRT.Me he dado cuenta si intento mostrar dos diálogos de mensajes a la vez, recibo una excesa no autorizada.Para evitar esto, quiero cerrar el cuadro de diálogo Mensaje existente si está abierto.Yo uso esto para mostrar el diálogo:

    MessageDialog md = new MessageDialog(" ");

    private void MessageBox(string s)
    {
        Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () =>
        {
            md.Content = s;
            //CLOSE HERE
            md.ShowAsync();
        }
        );
    }

¿Cómo lo cierro?

¿Fue útil?

Solución

en lugar de tratar de encontrar una manera de cerrarlo, intente esto declarar una variable de instancia para AsyncCommand;

AsyncCommand command;

command = md.ShowAsync();

Luego, en su CommandHandler, antes de ejecutar su método, compruebe si el comando es nulo

if(command!=null)
{
command.Cancel();
}

// Hacer el bloque de cosas / tryagein

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top