private async void CustomTest_OnClick(object sender, RoutedEventArgs e)
        {
            var mySettings = new ChildWindowDialogSettings
            {
                AllowMove             = true,
                AffirmativeButtonText = "Submit",
                NegativeButtonText    = "Close",
                ChildWindowWidth      = 400
            };

            var viewModel = new ExampleFormViewModel();
            var view      = new ExampleFormView
            {
                DataContext = viewModel
            };

            Func <MessageDialogResult, Task <bool> > callbackAsync = (result) =>
            {
                if (result == MessageDialogResult.Affirmative)
                {
                    if (!viewModel.IsValid)
                    {
                        return(Task.FromResult(false));
                    }
                }

                return(Task.FromResult(true));
            };

            await _mainMetroWindow.ShowChildWindowCustomAsync("Enter/Edit Form Details", view, callbackAsync, MessageDialogStyle.AffirmativeAndNegative, mySettings);
        }
Esempio n. 2
0
        public IActionResult Form()
        {
            ViewData["Title"] = "Example Form Validation";
            var model = new ExampleFormViewModel();

            SetExampleFormModel(model);
            return(View(model));
        }
Esempio n. 3
0
        public IActionResult Form(ExampleFormViewModel model)
        {
            ViewData["Title"] = "Example Form Validation";

            if (!ModelState.IsValid)
            {
                ViewData["Title"] = "Error: " + ViewData["Title"];
                SetExampleFormModel(model);
                return(View(model));
            }

            return(RedirectToAction("FormSuccess"));
        }
Esempio n. 4
0
        public void SetExampleFormModel(ExampleFormViewModel model)
        {
            model.RadioQuestion = new OptionsViewModel()
            {
                Question = "Yes or No?",
                Hint     = "This is a hint",
                Options  = new List <SelectListItem>()
                {
                    new SelectListItem()
                    {
                        Selected = false,
                        Text     = "Yes",
                        Value    = "True"
                    },
                    new SelectListItem()
                    {
                        Selected = false,
                        Text     = "No",
                        Value    = "False"
                    }
                }
            };

            model.RadioQuestion2 = new OptionsViewModel()
            {
                Question = "True or False?",
                Hint     = "This is a hint",
                Options  = new List <SelectListItem>()
                {
                    new SelectListItem()
                    {
                        Text  = "Yes",
                        Value = "True"
                    },
                    new SelectListItem()
                    {
                        Text  = "No",
                        Value = "False"
                    },
                    new SelectListItem()
                    {
                        Text  = "Maybe",
                        Value = "Maybe"
                    }
                }
            };

            model.CheckBoxQuestion = new OptionsViewModel()
            {
                Question = "True or False?",
                Hint     = "This is a hint",
                Options  = new List <SelectListItem>()
                {
                    new SelectListItem()
                    {
                        Text  = "Yes",
                        Value = "True"
                    },
                    new SelectListItem()
                    {
                        Text  = "No",
                        Value = "False"
                    }
                }
            };

            model.CheckBoxQuestion2 = new OptionsViewModel()
            {
                Question = "True or False?",
                Hint     = "This is a hint",
                Options  = new List <SelectListItem>()
                {
                    new SelectListItem()
                    {
                        Selected = false,
                        Text     = "Yes",
                        Value    = "True"
                    },
                    new SelectListItem()
                    {
                        Selected = false,
                        Text     = "No",
                        Value    = "False"
                    },
                    new SelectListItem()
                    {
                        Selected = false,
                        Text     = "Maybe",
                        Value    = "Maybe"
                    }
                }
            };

            model.SelectQuestion = new OptionsViewModel()
            {
                Question = "Select your option",
                Hint     = "This is a hint",
                Options  = new List <SelectListItem>()
                {
                    new SelectListItem()
                    {
                        Selected = false,
                        Text     = "Yes",
                        Value    = "True"
                    },
                    new SelectListItem()
                    {
                        Selected = false,
                        Text     = "No",
                        Value    = "False"
                    },
                    new SelectListItem()
                    {
                        Selected = false,
                        Text     = "Maybe",
                        Value    = "Maybe"
                    }
                }
            };
        }