public MailSendArgument(MailSendMode mode, DateTime date, ProductList productList, bool isCredit, int sendInterval) { _sendMode = mode; _date = date; _productList = productList; _isCredit = isCredit; _sendInterval = sendInterval; }
private void btnSendAll_Click(object sender, EventArgs e) { if (!bwSendMail.IsBusy) { // 获取参数对象 MailSendMode sendMode = ((ComboBoxSendModeItem)cbSendMode.SelectedItem).Value; DateTime date; if (rbDateToday.Checked) { date = DateTime.Now.Date; } else { date = dtpDate.Value.Date; } ProductList productListTmp = new ProductList(); switch (sendMode) { case MailSendMode.重发所有产品: foreach (Product product in Manager.ProductList) { product.Note = string.Empty; productListTmp.Add(product); } break; case MailSendMode.只发送勾选的产品: foreach (ListViewItem lvi in lvProductList.Items) { if (lvi.Checked == true) { productListTmp.Add((Product)lvi.Tag); } } break; case MailSendMode.发送未发送的产品: default: foreach (Product product in Manager.ProductList) { if (product.IsSendOK == false) { productListTmp.Add(product); } product.Note = string.Empty; } break; } MailSendArgument arg = new MailSendArgument(sendMode, date, productListTmp, false, Manager.MailSender.SendInterval); lbIsAllSendOK.Text = "N/A"; lbIsAllSendOK.ForeColor = Color.Black; btnSendAll.Text = "点击取消..."; // 禁用菜单 menuStrip.Enabled = false; btnSendAllNoCredit.Enabled = false; bwSendMail.RunWorkerAsync(arg); } else { btnSendAll.Text = "发送邮件"; bwSendMail.CancelAsync(); } }
public ComboBoxSendModeItem(string sText, MailSendMode sValue) { this._Text = sText; this._Value = sValue; }