private void gFazenda_ColumnHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e) { if (gFazenda.Columns[e.ColumnIndex].SortMode == DataGridViewColumnSortMode.NotSortable) { return; } if (bsFazenda.Count < 1) { return; } PropertyDescriptorCollection lP = TypeDescriptor.GetProperties(new CamadaDados.Fazenda.Cadastros.TRegistro_Fazenda()); CamadaDados.Fazenda.Cadastros.TList_Fazenda lComparer; SortOrder direcao = SortOrder.None; if ((gFazenda.Columns[e.ColumnIndex].HeaderCell.SortGlyphDirection == SortOrder.None) || (gFazenda.Columns[e.ColumnIndex].HeaderCell.SortGlyphDirection == SortOrder.Descending)) { lComparer = new CamadaDados.Fazenda.Cadastros.TList_Fazenda(lP.Find(gFazenda.Columns[e.ColumnIndex].DataPropertyName, true), SortOrder.Ascending); foreach (DataGridViewColumn c in gFazenda.Columns) { c.HeaderCell.SortGlyphDirection = SortOrder.None; } direcao = SortOrder.Ascending; } else { lComparer = new CamadaDados.Fazenda.Cadastros.TList_Fazenda(lP.Find(gFazenda.Columns[e.ColumnIndex].DataPropertyName, true), SortOrder.Descending); foreach (DataGridViewColumn c in gFazenda.Columns) { c.HeaderCell.SortGlyphDirection = SortOrder.None; } direcao = SortOrder.Descending; } (bsFazenda.List as CamadaDados.Fazenda.Cadastros.TList_Fazenda).Sort(lComparer); bsFazenda.ResetBindings(false); gFazenda.Columns[e.ColumnIndex].HeaderCell.SortGlyphDirection = direcao; }
public override int buscarRegistros() { CamadaDados.Fazenda.Cadastros.TList_Fazenda lista = CamadaNegocio.Fazenda.Cadastros.TCN_Fazenda.Buscar(cd_fazenda.Text, null); if (lista != null) { if (lista.Count > 0) { this.Lista = lista; bsFazenda.DataSource = lista; } else if ((vTP_Modo == Utils.TTpModo.tm_Standby) || (vTP_Modo == Utils.TTpModo.tm_busca)) { bsFazenda.Clear(); } return(lista.Count); } else { return(0); } }