private async void Button_Click(object sender, RoutedEventArgs e)
        {
            Loading view = new Loading();

            try
            {
                List <string>        toMail, ccMail, bccMail;
                ItemControlViewModel model = DataContext as ItemControlViewModel;
                toMail  = toMailBox.Text.Split(new char[] { ';' }).Where(x => x != "").ToList();
                ccMail  = ccMailBox.Text.Split(new char[] { ';' }).Where(x => x != "").ToList();
                bccMail = bccMailBox.Text.Split(new char[] { ';' }).Where(x => x != "").ToList();

                FileHandler handler = new FileHandler();
                string      str     = await handler.ReadFromInstallationSystem(FileName.Template, Extension.HTML);

                ItemControlViewModel itemModel = (ItemControlViewModel)DataContext;

                User requester = await getUser(itemModel.SitObject.RequesterName);

                User tester = await getUser(itemModel.SitObject.TestersInvolved);

                UserHelper helper   = new UserHelper();
                User       deployer = await helper.GetUserFromSystem();

                str = String.Format(str,
                                    "Hi All,",
                                    greetingText.Text,
                                    DateTime.Parse(itemModel.SitObject.DeploymentWindow).Day + "/",
                                    DateTime.Parse(itemModel.SitObject.DeploymentWindow).Month.ToString() + "/" + DateTime.Parse(itemModel.SitObject.DeploymentWindow).Year,
                                    DateTime.Parse(itemModel.SitObject.DeploymentWindow).Hour.ToString() + "00",
                                    (DateTime.Now.Month >= 4 && DateTime.Now.Month <= 10) ? "CEST" : "CET",
                                    (DateTime.Parse(itemModel.SitObject.DeploymentWindow).Hour + 1).ToString() + "00",
                                    itemModel.SitObject.Application,
                                    itemModel.SitObject.Id,
                                    itemModel.SitObject.Project,
                                    requester.Email,
                                    requester.Name,
                                    deployer.Name,
                                    deployer.Email,
                                    tester.Name,
                                    tester.Email,
                                    (Header == "Final Mail") ? "Completed successfully." : "Updates to follow soon.",
                                    deployer.Name
                                    );


                DialogHost.OpenDialogCommand.Execute(view, this);


                EWSClient eWSClient = Application.Current.Properties["ObjEWSClient"] as EWSClient;
                string    subject   = itemModel.SitObject.Id + " Notification " + itemModel.SitObject.Project;
                bool      result    = await eWSClient.SendMailAsync(toMail, ccMail, bccMail, subject, str);

                DialogHost.CloseDialogCommand.Execute(this, view);
                if (result)
                {
                    Message msg = new Message("Mail Send Successfully");
                    await DialogHost.Show(msg, "RootDialog", GridDialogHost_DialogOpened, GridDialogHost_DialogClosing);
                }
                else
                {
                    Message msg = new Message("Mail Send Failed");
                    await DialogHost.Show(msg, "RootDialog", GridDialogHost_DialogOpened, GridDialogHost_DialogClosing);
                }
            }
            catch (Exception ex)
            {
                DialogHost.CloseDialogCommand.Execute(this, view);
                Message msg = new Message(ex.ToString());
                await DialogHost.Show(msg, "RootDialog", GridDialogHost_DialogOpened, GridDialogHost_DialogClosing);
            }
        }