public override int buscarRegistros() { TList_TpOrdem lista = TCN_TpOrdem.Buscar(tp_ordem.Text, ds_tipoordem.Text, null); if (lista != null) { if (lista.Count > 0) { this.Lista = lista; bsTpOrdem.DataSource = lista; } else if ((vTP_Modo == TTpModo.tm_Standby) || (vTP_Modo == TTpModo.tm_busca)) { bsTpOrdem.Clear(); } return(lista.Count); } else { return(0); } }
private void gTpOrdem_ColumnHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e) { if (gTpOrdem.Columns[e.ColumnIndex].SortMode == DataGridViewColumnSortMode.NotSortable) { return; } if (bsTpOrdem.Count < 1) { return; } PropertyDescriptorCollection lP = TypeDescriptor.GetProperties(new TRegistro_TpOrdem()); TList_TpOrdem lComparer; SortOrder direcao = SortOrder.None; if ((gTpOrdem.Columns[e.ColumnIndex].HeaderCell.SortGlyphDirection == SortOrder.None) || (gTpOrdem.Columns[e.ColumnIndex].HeaderCell.SortGlyphDirection == SortOrder.Descending)) { lComparer = new TList_TpOrdem(lP.Find(gTpOrdem.Columns[e.ColumnIndex].DataPropertyName, true), SortOrder.Ascending); foreach (DataGridViewColumn c in gTpOrdem.Columns) { c.HeaderCell.SortGlyphDirection = SortOrder.None; } direcao = SortOrder.Ascending; } else { lComparer = new TList_TpOrdem(lP.Find(gTpOrdem.Columns[e.ColumnIndex].DataPropertyName, true), SortOrder.Descending); foreach (DataGridViewColumn c in gTpOrdem.Columns) { c.HeaderCell.SortGlyphDirection = SortOrder.None; } direcao = SortOrder.Descending; } (bsTpOrdem.List as TList_TpOrdem).Sort(lComparer); bsTpOrdem.ResetBindings(false); gTpOrdem.Columns[e.ColumnIndex].HeaderCell.SortGlyphDirection = direcao; }