public override int buscarRegistros() { TList_Despesa lista = TCN_Despesa.Buscar(id_despesa.Text, ds_despesa.Text, (tp_despesa.SelectedValue != null ? tp_despesa.SelectedValue.ToString() : string.Empty), null); if (lista != null) { if (lista.Count > 0) { this.Lista = lista; bsDespesa.DataSource = lista; } else if ((vTP_Modo == Utils.TTpModo.tm_Standby) || (vTP_Modo == Utils.TTpModo.tm_busca)) { bsDespesa.Clear(); } return(lista.Count); } else { return(0); } }
private void gDespesa_ColumnHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e) { if (gDespesa.Columns[e.ColumnIndex].SortMode == DataGridViewColumnSortMode.NotSortable) { return; } if (bsDespesa.Count < 1) { return; } PropertyDescriptorCollection lP = TypeDescriptor.GetProperties(new TRegistro_Despesa()); TList_Despesa lComparer; SortOrder direcao = SortOrder.None; if ((gDespesa.Columns[e.ColumnIndex].HeaderCell.SortGlyphDirection == SortOrder.None) || (gDespesa.Columns[e.ColumnIndex].HeaderCell.SortGlyphDirection == SortOrder.Descending)) { lComparer = new TList_Despesa(lP.Find(gDespesa.Columns[e.ColumnIndex].DataPropertyName, true), SortOrder.Ascending); foreach (DataGridViewColumn c in gDespesa.Columns) { c.HeaderCell.SortGlyphDirection = SortOrder.None; } direcao = SortOrder.Ascending; } else { lComparer = new TList_Despesa(lP.Find(gDespesa.Columns[e.ColumnIndex].DataPropertyName, true), SortOrder.Descending); foreach (DataGridViewColumn c in gDespesa.Columns) { c.HeaderCell.SortGlyphDirection = SortOrder.None; } direcao = SortOrder.Descending; } (bsDespesa.List as TList_Despesa).Sort(lComparer); bsDespesa.ResetBindings(false); gDespesa.Columns[e.ColumnIndex].HeaderCell.SortGlyphDirection = direcao; }