using DevExpress.XtraEditors; using DevExpress.XtraExport.Helpers; using DevExpress.XtraGrid.Views.Grid; using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Data.Entity; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Controls; using System.Windows.Documents; using System.Windows.Forms; using XzXdDw.App.EFContext; using XzXdDw.App.Model; namespace XzXdDw.App.UserControl { public partial class CtrlWcpj : DevExpress.XtraEditors.XtraUserControl { public CtrlWcpj() { InitializeComponent(); } private void CtrlWcpj_Load(object sender, EventArgs e) { gridWcpg.Init().UseFilter().UseMultiSelect().UseRowNumber(); } private void gridView1_PopupMenuShowing(object sender, PopupMenuShowingEventArgs e) { if (gridView1.FocusedRowHandle < 0) return; if (!gridView1.GetSelectedRows().Any()) { btnDel.Visibility = DevExpress.XtraBars.BarItemVisibility.Never; } else { btnDel.Visibility = DevExpress.XtraBars.BarItemVisibility.Always; } popupMenu2.ShowPopup(MousePosition); } private async void btnDel_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { try { var ids = gridView1.GetSelectedRows(); using (RHDWContext db = new RHDWContext()) { foreach (var id in ids) { var item = gridView1.GetRow(id) as CgRes; var delItem = await db.CgRes.Where(p => p.ID == item.ID).FirstOrDefaultAsync(); if (delItem != null) { db.CgRes.Remove(delItem); } } await db.SaveChangesAsync(); } gridView1.DeleteSelectedRows(); } catch (Exception ex) { Serilog.Log.Error("删除结果失败", ex); XtraMessageBox.Show("删除结果失败"); } } } }