SensorbergSDK.BeaconAction.ToMessageDialog C# (CSharp) Method

ToMessageDialog() public method

Creates a message dialog based on the data of this beacon action. Note that no commands is added to the created dialog.
public ToMessageDialog ( ) : MessageDialog
return Windows.UI.Popups.MessageDialog
        public MessageDialog ToMessageDialog()
        {
            string message = string.Empty;

            switch (Type)
            {
                case BeaconActionType.UrlMessage:
                case BeaconActionType.VisitWebsite:
                    message = string.Format("{0}\nVisit {1}?", Body, Url);
                    break;
                case BeaconActionType.InApp:
                    message = Body;
                    break;
            }

            MessageDialog messageDialog = new MessageDialog(message, Subject);
            return messageDialog;
        }

Usage Example

        /// <summary>
        /// Displays a dialog and a toast notification corresponding to the given beacon action.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private async void OnBeaconActionResolvedAsync(object sender, BeaconAction e)
		{
            await Windows.ApplicationModel.Core.CoreApplication.MainView.CoreWindow.Dispatcher.RunAsync(
                Windows.UI.Core.CoreDispatcherPriority.Normal, async () =>
            {
                MessageDialog messageDialog = e.ToMessageDialog();

                switch (e.Type)
                {
                    case BeaconActionType.UrlMessage:
                    case BeaconActionType.VisitWebsite:
                        messageDialog.Commands.Add(new UICommand("Yes",
                            new UICommandInvokedHandler(async (command) =>
                            {
                                await Windows.System.Launcher.LaunchUriAsync(new Uri(e.Url));
                                _beaconActionDialogOperation.Cancel();
                                _beaconActionDialogOperation = null;
                            })));

                        messageDialog.Commands.Add(new UICommand("No"));

                        _beaconActionDialogOperation = messageDialog.ShowAsync();
                        break;

                    case BeaconActionType.InApp:
                        await messageDialog.ShowAsync();
                        break;
                }
            });
        }
All Usage Examples Of SensorbergSDK.BeaconAction::ToMessageDialog