protected override void Execute(NativeActivityContext context) { var model = Model.Get(context); var source = Source.Get(context); var dlgmodel = new DialogSourceViewModel { PanelCaption = model.Header, IsMenuVisible = IsMenuVisible.Get(context), FontSize = model.FontSize }; var menu = MenuItems.Get(context); if (menu != null && menu.Length > 0) { dlgmodel.MenuItems.AddRange(menu); dlgmodel.CreateMenu(); } UpdateFields(source, model); dlgmodel.Fields.AddRange(model.Fields); dlgmodel.UpdateSource(); dlgmodel.LayoutValue = Layout.Get(context); string menuResult; var dialogResult = ShowDialog(dlgmodel, out menuResult); if (dialogResult) { model.Fields.Clear(); model.Fields.AddRange(dlgmodel.Fields); Model.Set(context, model); } DialogResult.Set(context, dialogResult); if (DialogResultWithMenu != null) { DialogResultWithMenu.Set(context, menuResult); } }