2016-10-10 1 views
1

Je veux essayer d'afficher le dialogue de message dans le fichier .cs qui est dans le projet pcl.Je veux appeler sa méthode à partir de mon view.xaml.cs pour l'affichage d'alerte.comment afficher le message dailogue dans le fichier de classe de projet PCL

i essayé d'utiliser

var dialog = new MessageDialog(e.Message, e.GetType().ToString()); 
     dialog.Commands.Add(new UICommand("Ok", null)); 

     await dialog.ShowDialogSafely(); 

mais qui nécessitent espace de noms windows.UI.Popups qui ne sont pas disponibles dans le fichier de classe de project.I pcl pense qu'il est parce qu'il a partagé par tous et que la plate-forme espace de noms est pour Windows Alors, comment puis-je y parvenir. S'il vous plaît aider. merci d'avance

Répondre

3

Vous pouvez utiliser le plugin User dialogs pour y parvenir. Il fournit des boîtes de dialogue multi-plateforme. https://github.com/aritchie/userdialogs. Et il est juste une seule ligne:

await UserDialogs.Instance.AlertAsync(e.Message, e.GetType().ToString()); 

Vous pouvez l'installer via NuGet: https://www.nuget.org/packages/Acr.UserDialogs/. S'il vous plaît lire le readme github sur la façon de le configurer correctement.

0

remplacement pour Acr.UserDialogs qui a travaillé pour moi est:

var result = await Application.Current.MainPage.DisplayAlert(
     title, 
     message, 
     buttonConfirmText, 
     buttonCancelText); 

Le bon côté est parce que vous n'avez pas besoin de la référence du plugin dans le projet soit 'UserDialogs.Init (this);' dans votre classe MainActivity. Une possibilité est aussi avec Prism, mais vous devez l'installer: https://prismlibrary.readthedocs.io/en/latest/Xamarin-Forms/4-Page-Dialog-Service/

Source: https://forums.xamarin.com/discussion/48009/pop-display-alert-message-from-viewmodel