コード例 #1
0
        // Обработка создания почтового ящика
        private void CreatBoxButton_Click(object sender, RoutedEventArgs e)
        {
            // Запуск диалогового окна для ввода настроек почтового ящика
            CreatBoxWindow NewWindow = new CreatBoxWindow("Новая учетная запись", new MailBox())
            {
                Owner = this
            };

            if (NewWindow.ShowDialog() == true)
            {
                // Проверка, что ящик с таким адресом ещё не существует
                string newAddress = NewWindow.MyBox.MyAddress.Address;
                if (!Client.ConsistAddress(newAddress))
                {
                    try
                    {
                        Client.MailBoxList.Add(NewWindow.MyBox);
                        // Добавление нового почтового ящика в список
                        MailBox mb = Client.MailBoxList.Last();
                        // Визуализация добавленного ящика
                        if (mb != null)
                        {
                            ((MyViewControl)DataContext).Title = mb.Name;
                        }
                        ((MyViewControl)DataContext).CurrentBoxNum = mb;
                        // Изменение текущего почтового ящика
                        Client.CurrentMailBox = mb;
                        // Добавление нового ящика в файл
                        MailStorage.SaveNewMailBox(mb);
                        listMailBox.Items.Refresh();
                        // Очистка списка писем
                        ((MyViewControl)DataContext).SelFolder = null;
                        // Очистка окна просмотра письма
                        ((MyViewControl)DataContext).Message   = null;
                        ((MyViewControl)DataContext).OpMessBox = 0;
                        // Загрузить список папок
                        Client.LoadFolderList();
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.Message);
                    }
                }
                else
                {
                    MessageBox.Show("Учетная запись с адресом " + newAddress + " уже существует");
                }
            }
        }
コード例 #2
0
 // Обработка вызова окна настроек почтового ящика
 private void SettingButton_Click(object sender, RoutedEventArgs e)
 {
     if (Client.CurrentMailBox != null)
     {
         // Запуск диалогового окна для ввода настроек почтового ящика
         CreatBoxWindow NewWindow = new CreatBoxWindow("Настройки учетной записи", Client.CurrentMailBox)
         {
             Owner = this
         };
         if (NewWindow.ShowDialog() == true)
         {
             try
             {
                 // Замена текущего ящика на ящик с новыми настройками
                 MailBox newMb = new MailBox(NewWindow.MyBox);
                 Client.MailBoxList[Client.MailBoxList.IndexOf(Client.CurrentMailBox)] = newMb;
                 // Визуализация ящика
                 ((MyViewControl)DataContext).CurrentBoxNum = newMb;
                 Client.CurrentMailBox = newMb;
                 // Сохранение настроек почтового ящика в файл
                 MailStorage.SaveSettings(newMb);
                 listMailBox.Items.Refresh();
                 // Очистка списка писем
                 ((MyViewControl)DataContext).SelFolder = null;
                 // Очистка окна просмотра письма
                 ((MyViewControl)DataContext).Message   = null;
                 ((MyViewControl)DataContext).OpMessBox = 0;
                 // Загрузить список папок
                 Client.LoadFolderList();
             }
             catch (Exception ex)
             {
                 MessageBox.Show(ex.Message);
             }
         }
     }
     else
     {
         MessageBox.Show("Выберите учетную запись");
     }
 }