private void bgrvChonXa_CellValueChanging(object sender, DevExpress.XtraGrid.Views.Base.CellValueChangedEventArgs e) { if (e.Column.Name.StartsWith("colID_DIAN_XA")) { ChonDiaBanXa chon = bgrvChonXa.GetRow(e.RowHandle) as ChonDiaBanXa; if (chon != null) { if ((bool)e.Value) { chon.THU_TU_CHON_XA.Add(e.Column.Tag.ToString()); } else { chon.THU_TU_CHON_XA.RemoveAll(p => p == e.Column.Tag.ToString()); } chon.TEN_CAC_XA_DUOC_CHON = "";//Vì cần theo thứ tự string.Join(";", _lstXa.Where(p => chon.THU_TU_CHON_XA.Contains(p.ID)).Select(p => p.ND)); foreach (string id_xa in chon.THU_TU_CHON_XA) { chon.TEN_CAC_XA_DUOC_CHON += $"{_lstXa.FirstOrDefault(p => p.ID == id_xa)?.ND ?? ""}; "; } chonDiaBanXaBindingSource.EndEdit(); bgrvChonXa.RefreshData(); } } }
private async Task HienThiGiaoDien() { _lstXa = await _db.MA_DIA_BAN_XA.ToListAsync(); for (int i = 0; i < _cacXaCoDau.Count; i++) { var col = bgrvChonXa.Columns.FirstOrDefault(p => p.Name == $"colID_DIAN_XA_{i + 1}"); if (col != null) { col.Visible = true; col.Caption = _lstXa.FirstOrDefault(p => p.ID == _cacXaCoDau[i])?.ND ?? _cacXaCoDau[i].ToString(); col.Tag = _cacXaCoDau[i]; } } foreach (var cb in await _db.CAN_BO.ToListAsync()) { ChonDiaBanXa chon = new ChonDiaBanXa(); chon.ID_CAN_BO = cb.IdCanBo; chonDiaBanXaBindingSource.Add(chon); } cANBOBindingSource.DataSource = _db.CAN_BO.Local; }