private void dgvMeterList_CellClick(object sender, DataGridViewCellEventArgs e) { if (e.RowIndex >= 0) { if (e.ColumnIndex == 12) { //DeleteForMeter if (!CheckingRoleManagementFeature("MeterEditOrDelete")) { MessageBox.Show("Access Deined for this function.", "Information", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } DialogResult result = MessageBox.Show(this, "Are you sure you want to delete?", "Delete", MessageBoxButtons.OKCancel, MessageBoxIcon.Information); if (result.Equals(DialogResult.OK)) { DataGridViewRow row = dgvMeterList.Rows[e.RowIndex]; meterID = Convert.ToString(row.Cells[0].Value); Meter meterObj = (Meter)row.DataBoundItem; meterObj = (from m in mbsEntities.Meters where m.MeterID == meterObj.MeterID select m).FirstOrDefault(); var customerCount = (from c in meterObj.Customers where c.Active == true select c).Count(); if (customerCount > 0) { MessageBox.Show("This Meter No cannot deleted! It is in used.", "Cannot Delete", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } dgvMeterList.DataSource = ""; Meter meter = (from m in mbsEntities.Meters where m.MeterID == meterID select m).FirstOrDefault(); meter.Active = false; meter.DeletedUserID = UserID; meter.DeletedDate = DateTime.Now; meterController.DeletedMeter(meter); dgvMeterList.DataSource = (from m in mbsEntities.Meters where m.Active == true orderby m.MeterNo descending select m).ToList(); MessageBox.Show(this, "Successfully Deleted!", "Delete Complete", MessageBoxButtons.OK, MessageBoxIcon.Information); FormRefresh(); } } else if (e.ColumnIndex == 10) { if (!CheckingRoleManagementFeature("MeterView")) { MessageBox.Show("Access Deined for this function.", "Information", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } DetailMeterfrm detailmeterForm = new DetailMeterfrm(); detailmeterForm.meterID = Convert.ToString(dgvMeterList.Rows[e.RowIndex].Cells[0].Value); detailmeterForm.ShowDialog(); } else if (e.ColumnIndex == 11) { //EditMeter if (!CheckingRoleManagementFeature("MeterEditOrDelete")) { MessageBox.Show("Access Deined for this function.", "Information", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } MeterFrm meterForm = new MeterFrm(); meterForm.isEdit = true; meterForm.Text = "Edit Meter"; meterForm.meterID = Convert.ToString(dgvMeterList.Rows[e.RowIndex].Cells[0].Value); meterForm.UserID = UserID; meterForm.ShowDialog(); this.Close(); } //remove funciton here else if (e.ColumnIndex == 13) { if (!CheckingRoleManagementFeature("MeterEditOrDelete")) { MessageBox.Show("Access Deined for this function.", "Information", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } DataGridViewRow row = dgvMeterList.Rows[e.RowIndex]; Meter _meter = (Meter)row.DataBoundItem; if (rdounregistermeter.Checked || rdoremovedmeter.Checked) { MessageBox.Show("Unregister meter list or removed meter list can't remove", "Access deined"); return; } MeterRemoveUI meterremoveui = new MeterRemoveUI(); meterremoveui.meter = _meter; meterremoveui.Show(); } } }