private void dgMessages_CellContentDoubleClick(object sender, DataGridViewCellEventArgs e) { try { // get the selected item Id string mId = dgMessages.Rows[e.RowIndex].Cells[(int)columns.Id].Value.ToString(); // open the associated form based on the selected column if (e.ColumnIndex == (int)columns.To) { // create a temp recip collection List <Recipient> tRecips = null; // loop through the cached dictionary values foreach (KeyValuePair <string, List <Recipient> > pair in dRecips) { // if the value matches the selected item id // add it to the temp dictionary if (pair.Key == mId) { tRecips = pair.Value; } } // pass the temp dictionary to the form RecipientCollection mRecipients = new RecipientCollection(mId, tRecips); mRecipients.Owner = this; mRecipients.ShowDialog(this); } if (e.ColumnIndex == (int)columns.Attachments) { if (dFileAttachments.Count > 0 || dItemAttachments.Count > 0) { List <FileAttachment> tFileAttachments = null; List <ItemAttachment> tItemAttachments = null; List <ReferenceAttachment> tRefAttachments = null; foreach (KeyValuePair <string, List <FileAttachment> > pair in dFileAttachments) { if (pair.Key == mId) { tFileAttachments = pair.Value; } } foreach (KeyValuePair <string, List <ItemAttachment> > pair in dItemAttachments) { if (pair.Key == mId) { tItemAttachments = pair.Value; } } foreach (KeyValuePair <string, List <ReferenceAttachment> > pair in dReferenceAttachments) { if (pair.Key == mId) { tRefAttachments = pair.Value; } } AttachmentsForm mAttachment = new AttachmentsForm(mId, tFileAttachments, tItemAttachments, tRefAttachments, ref applogger); mAttachment.Owner = this; mAttachment.ShowDialog(this); } } if (e.ColumnIndex == (int)columns.Bcc) { List <Recipient> tRecips = null; foreach (KeyValuePair <string, List <Recipient> > pair in dBcc) { if (pair.Key == mId) { tRecips = pair.Value; } } RecipientCollection mRecipients = new RecipientCollection(mId, tRecips); mRecipients.Owner = this; mRecipients.ShowDialog(this); } if (e.ColumnIndex == (int)columns.Cc) { List <Recipient> tRecips = null; foreach (KeyValuePair <string, List <Recipient> > pair in dCc) { if (pair.Key == mId) { tRecips = pair.Value; } } RecipientCollection mRecipients = new RecipientCollection(mId, tRecips); mRecipients.Owner = this; mRecipients.ShowDialog(this); } if (e.ColumnIndex == (int)columns.ReplyTo) { List <Recipient> tRecips = null; foreach (KeyValuePair <string, List <Recipient> > pair in dReplyTo) { if (pair.Key == mId) { tRecips = pair.Value; } } RecipientCollection mRecipients = new RecipientCollection(mId, tRecips); mRecipients.Owner = this; mRecipients.ShowDialog(this); } if (e.ColumnIndex == (int)columns.Body) { List <ItemBody> lBody = null; foreach (KeyValuePair <string, List <ItemBody> > pair in dItemBody) { if (pair.Key == mId) { lBody = pair.Value; } } ItemBodyForm mItemBodyCollection = new ItemBodyForm(mId, lBody); mItemBodyCollection.Owner = this; mItemBodyCollection.ShowDialog(this); } if (e.ColumnIndex == (int)columns.Categories) { List <string> lCategories = null; foreach (KeyValuePair <string, List <string> > pair in dCategories) { if (pair.Key == mId) { lCategories = pair.Value; } } CategoriesForm mCategories = new CategoriesForm(lCategories); mCategories.Owner = this; mCategories.ShowDialog(this); } } catch (Exception ex) { applogger.Log("Double-click Error:"); applogger.Log(ex.Message); } }
private void dgMessages_CellContentDoubleClick(object sender, DataGridViewCellEventArgs e) { try { // get the selected item Id string mId = dgMessages.Rows[e.RowIndex].Cells[(int)columns.Id].Value.ToString(); // open the associated form based on the selected column if (e.ColumnIndex == (int)columns.To) { // create a temp recip collection List<Recipient> tRecips = null; // loop through the cached dictionary values foreach (KeyValuePair<string, List<Recipient>> pair in dRecips) { // if the value matches the selected item id // add it to the temp dictionary if (pair.Key == mId) { tRecips = pair.Value; } } // pass the temp dictionary to the form RecipientCollection mRecipients = new RecipientCollection(mId, tRecips); mRecipients.Owner = this; mRecipients.ShowDialog(this); } if (e.ColumnIndex == (int)columns.Attachments) { if (dFileAttachments.Count > 0 || dItemAttachments.Count > 0) { List<FileAttachment> tFileAttachments = null; List<ItemAttachment> tItemAttachments = null; List<ReferenceAttachment> tRefAttachments = null; foreach (KeyValuePair<string, List<FileAttachment>> pair in dFileAttachments) { if (pair.Key == mId) { tFileAttachments = pair.Value; } } foreach (KeyValuePair<string, List<ItemAttachment>> pair in dItemAttachments) { if (pair.Key == mId) { tItemAttachments = pair.Value; } } foreach (KeyValuePair<string, List<ReferenceAttachment>> pair in dReferenceAttachments) { if (pair.Key == mId) { tRefAttachments = pair.Value; } } AttachmentsForm mAttachment = new AttachmentsForm(mId, tFileAttachments, tItemAttachments, tRefAttachments, ref applogger); mAttachment.Owner = this; mAttachment.ShowDialog(this); } } if (e.ColumnIndex == (int)columns.Bcc) { List<Recipient> tRecips = null; foreach (KeyValuePair<string, List<Recipient>> pair in dBcc) { if (pair.Key == mId) { tRecips = pair.Value; } } RecipientCollection mRecipients = new RecipientCollection(mId, tRecips); mRecipients.Owner = this; mRecipients.ShowDialog(this); } if (e.ColumnIndex == (int)columns.Cc) { List<Recipient> tRecips = null; foreach (KeyValuePair<string, List<Recipient>> pair in dCc) { if (pair.Key == mId) { tRecips = pair.Value; } } RecipientCollection mRecipients = new RecipientCollection(mId, tRecips); mRecipients.Owner = this; mRecipients.ShowDialog(this); } if (e.ColumnIndex == (int)columns.ReplyTo) { List<Recipient> tRecips = null; foreach (KeyValuePair<string, List<Recipient>> pair in dReplyTo) { if (pair.Key == mId) { tRecips = pair.Value; } } RecipientCollection mRecipients = new RecipientCollection(mId, tRecips); mRecipients.Owner = this; mRecipients.ShowDialog(this); } if (e.ColumnIndex == (int)columns.Body) { List<ItemBody> lBody = null; foreach (KeyValuePair<string, List<ItemBody>> pair in dItemBody) { if (pair.Key == mId) { lBody = pair.Value; } } ItemBodyForm mItemBodyCollection = new ItemBodyForm(mId, lBody); mItemBodyCollection.Owner = this; mItemBodyCollection.ShowDialog(this); } if (e.ColumnIndex == (int)columns.Categories) { List<string> lCategories = null; foreach (KeyValuePair<string, List<string>> pair in dCategories) { if (pair.Key == mId) { lCategories = pair.Value; } } CategoriesForm mCategories = new CategoriesForm(lCategories); mCategories.Owner = this; mCategories.ShowDialog(this); } } catch (Exception ex) { applogger.Log("Double-click Error:"); applogger.Log(ex.Message); } }