Beispiel #1
0
        private void Refresh_Click(object sender, EventArgs e)
        {
            DataWorker dataWorker = DataWorker.Instance;

            mailList.Items.Clear();
            mails.Clear();
            foreach (var item in dataWorker.GetMails(currentFolder))
            {
                mailList.Items.Add(new ListViewItem(new[] { item.From, item.To, item.Subject }));
                mails.Add(item);
            }
        }
Beispiel #2
0
        //Загрузка сообщений из файла и заполнение ими ListView
        private void LoadMails(string folderName)
        {
            DataWorker dataWorker = DataWorker.Instance;

            mailList.Items.Clear();
            mails.Clear();
            foreach (var item in dataWorker.GetMails(folderName))
            {
                mailList.Items.Add(new ListViewItem(new[] { item.From, item.To, item.Subject }));
                mails.Add(item);
            }
            mailList.AutoResizeColumns(ColumnHeaderAutoResizeStyle.ColumnContent);
            mailList.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize);
        }
Beispiel #3
0
        private void mailList_ItemClicked(object sender, MouseEventArgs e)
        {
            DataWorker dataWorker = DataWorker.Instance;

            if (e.Button == MouseButtons.Left)
            {
                if (mailList.SelectedItems.Count > 0)
                {
                    mailText.Text = dataWorker.GetMails(currentFolder)[mailList.SelectedItems[0].Index].Body;
                }
            }
            else if (e.Button == MouseButtons.Right)
            {
                if (currentFolder != "Sent Mail")
                {
                    //проверяет что нажатие произведено в пределах выделенного элемента
                    if (mailList.FocusedItem.Bounds.Contains(e.Location))
                    {
                        var moveToItem = (ToolStripMenuItem)mailMenuStrip.Items[0];
                        //Если папок стало больше
                        if (moveToItem.DropDownItems.Count < dataWorker.GetFolders().Count - 2)
                        {
                            moveToItem.DropDownItems.Clear();
                            foreach (var folder in dataWorker.GetFolders())
                            {
                                if (folder != currentFolder && folder != "Sent Mail")
                                {
                                    /*var copyItem = new ToolStripMenuItem(folder);
                                     * copyItem.Click += CopyMail;
                                     * ((ToolStripMenuItem) mailMenuStrip.Items[0]).DropDownItems.Add(copyItem);*/

                                    var moveItem = new ToolStripMenuItem(folder);
                                    moveItem.Click += MoveMail;
                                    moveToItem.DropDownItems.Add(moveItem);
                                }
                            }
                        }
                        mailMenuStrip.Show(Cursor.Position);
                    }
                }
            }
        }