/// <summary> /// The update email status data grid. /// </summary> private void UpdateNdrDataGrid() { try { var inboxFolder = (Outlook.MAPIFolder) this.FolderComboBox.SelectedItem; ThisAddIn.thisApplication.ActiveExplorer().CurrentFolder = inboxFolder; ThisAddIn.thisApplication.ActiveExplorer().CurrentFolder.Display(); var fp = FilterParametersData.GetDefault(); this.emailParsingDataList = GpiOutlookWrapper.GetMailBoxContent(inboxFolder, fp, "REPORT.IPM.Note.NDR"); this.InfoToolStripStatusLabel.Text = string.Format("Обнаружено NDR: {0}", this.emailParsingDataList.Count); this.NdrDataGridView.DataSource = this.emailParsingDataList; if (this.emailParsingDataList.Count > 0) { this.NdrDataGridView.SelectedRows[0].Selected = true; this.EmailStatusDataGridViewSelectionChanged(null, null); } } catch (Exception ex) { this.InfoListBox.Items.Add("FolderComboBoxSelectedIndexChanged " + ex.Message); } }
/// <summary> /// The monitro user control load. /// </summary> /// <param name="sender"> /// The sender. /// </param> /// <param name="e"> /// The e. /// </param> private void MonitroUserControlLoad(object sender, EventArgs e) { try { this.filterParameters = FilterParametersData.GetDefault(); this.FinishDateTimePicker.Value = this.filterParameters.StartDateTime; this.StartDateTimePicker.Value = this.filterParameters.FinishDateTime; this.SubjectContainTextBox.Text = this.filterParameters.SubjectContain; this.NonDeliveryStatusCheckBox.Checked = this.filterParameters.NonDeliveryStatus; this.UnknownStatusCheckBox.Checked = this.filterParameters.UnknownStatus; this.DeliveryStatusCheckBox.Checked = this.filterParameters.DeliveryStatus; this.MonitorStatusDataGridView.AutoGenerateColumns = false; var dataGridViewColumn = this.MonitorStatusDataGridView.Columns["CreationTimeColumn"]; if (dataGridViewColumn != null) { dataGridViewColumn.DefaultCellStyle.Format = "dd'.'MM'.'yyyy HH:mm:ss"; } this.webBrowser.Url = new Uri("about:blank"); this.webBrowser.DocumentText = "<html><body>Ожидание...</body></html>"; this.Width = 400; this.FolderComboBox.Items.Clear(); var count = 0; var selectedIndex = 0; foreach (dynamic folder in ThisAddIn.thisApplication.GetNamespace("MAPI").Folders) { var subFolders = GpiOutlookWrapper.GetFolder(folder.FolderPath); foreach (Outlook.MAPIFolder subFolder in subFolders.Folders) { this.FolderComboBox.Items.Add(subFolder); //// if (subFolder.FullFolderPath.Contains("*****@*****.**") && subFolder.FullFolderPath.Contains("Отправленные")) if (subFolder.FullFolderPath.Contains("Отправленные") && (subFolder.FullFolderPath.Contains("Канцелярия") || subFolder.FullFolderPath.Contains("kancelaria"))) { selectedIndex = count; } count++; } Marshal.ReleaseComObject(subFolders); } this.FolderComboBox.SelectedIndex = selectedIndex; this.MonitorStatusDataGridView.SelectionChanged += this.MonitorStatusDataGridViewSelectionChanged; this.MainToolTip.SetToolTip(this.FilterButton, @"Показать/скрыть фильтр"); this.MainToolTip.SetToolTip(this.UpdateButton, @"Обновить список писем"); this.MainToolTip.SetToolTip(this.FolderComboBox, @"Выбор источника для сканирования отправленных писем"); this.MainToolTip.SetToolTip(this.StartDateTimePicker, @"Начальная дата"); this.MainToolTip.SetToolTip(this.FinishDateTimePicker, @"Конечная дата"); this.MainToolTip.SetToolTip(this.SubjectContainTextBox, @"Фильтр по теме"); this.MainToolTip.SetToolTip(this.NonDeliveryStatusCheckBox, @"Недоставленный письма"); this.MainToolTip.SetToolTip(this.DeliveryStatusCheckBox, @"Доставленные письма"); this.MainToolTip.SetToolTip(this.UnknownStatusCheckBox, @"Нет информации по письму"); this.MainToolTip.SetToolTip(this.MonitorStatusDataGridView, @"Монитор писем"); } catch (Exception ex) { this.InfoListBox.Items.Add("EmailStatusUserControlLoad " + ex.Message); this.InfoListBox.Items.Add("EmailStatusUserControlLoad " + ex.StackTrace); } }