2016-10-10 7 views
1

pcl 프로젝트에있는 .cs 파일에서 메시지 대화 상자를 표시하려고합니다. 경고를 표시하기 위해 해당 view.xaml.cs에서 해당 메서드를 호출하고 싶습니다. PCL 프로젝트 클래스 파일에 메시지 보관을 표시하는 방법

은 내가

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

     await dialog.ShowDialogSafely(); 

를 사용하지만 그 생각 PCL project.I의 클래스 파일에서 사용할 수 없습니다 windows.UI.Popups 네임 스페이스를 요구하는 시도는이 모든 플랫폼을 공유하고 네임 스페이스는 Windows 용이므로 내가 어떻게 이걸 이룰 수 있니? 도움을 청하십시오. 미리 감사드립니다.

답변

3

사용자 대화 상자 플러그인을 사용하여이를 수행 할 수 있습니다. 크로스 플랫폼 대화 상자를 제공합니다. https://github.com/aritchie/userdialogs. 그리고 그것은 단지 하나의 라이너입니다 :

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

당신은 NuGet을 통해 설치할 수 있습니다 : https://www.nuget.org/packages/Acr.UserDialogs/. 올바르게 설정하는 방법에 대한 github 추가 정보를 읽으십시오.

0

근무 Acr.UserDialogs에 대한 교체 나를 :

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

좋은 측면은 프로젝트에서 플러그인 참조가 필요 없기 때문입니다. 'UserDialogs.Init (this);' MainActivity 클래스에서. 하나의 가능성은 프리즘과도하지만 당신은 그것을 설치해야합니다 https://prismlibrary.readthedocs.io/en/latest/Xamarin-Forms/4-Page-Dialog-Service/

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