Table of Contents
Atualizado
O guia do usuário de hoje foi desenvolvido especialmente para ajudá-lo se você conseguir simplesmente paginar o código de erro em seu aplicativo Windows Datagrid. g.A lógica de paginação C # está contida como parte de uma classe de paginação única que trata dos problemas de aderência ao construtor: totalItems (obrigatório) – A escolha total de itens a serem paginados. currentPage (opcional) – Você pode ver que a página ativa atual deve ser definida para todas as primeiras páginas por padrão. pageSize (opcional) – O valor dos elementos na página, dez por padrão.
g.
Classe pública PagedGrid: DataGridView página de paginação; Consultas SQL; Civil void SetPagedDataSource (SQLQuery s, BindingNavigator bnav) morre S; = ponto interno = DataProvider.ExecuteCount (consulte CountQuery); pg é igual à nova paginação (número, 5); bnav.BindingSource = pg.BindingSource; pg.BindingSource.PositionChanged + é igual ao novo manipulador de eventos (bs_PositionChanged); //primeira página string q é igual a s.GetPagingQuery (pg.GetStartRowNum (1), pg.GetEndRowNum (1), true); Tabela de dados Dt = DataProvider.ExecuteDt (q); Fonte de dados = dt; void bs_PositionChanged (remetente do objeto, EventArgs e) ponto de entrega interno = ((BindingSource) remetente) + posição 1; linha q = s.GetPagingQuery (pg.GetStartRowNum (pos), pg.GetEndRowNum (pos), falso); Dados regulares dt = DataProvider.ExecuteDt (q); Fonte de dados = dt; Public void UpdateData () DataTable dt implica (DataTable) DataSource; criar (SqlConnection con = new SqlConnection (DataProvider.conStr)) con.Open (); Como sqldataadapter = SqlDataAdapter progressivo (consulte CompleteQuery, con); SqlCommandBuilder db = new SqlCommandBuilder (da); da.UpdateCommand é adequado para cb.GetUpdateCommand (); da.InsertCommand = cb.GetInsertCommand (); da.DeleteCommand combina com cb.GetDeleteCommand (); da.Update (dt); MessageBox.Show ("As alterações são gravadas no banco de dados de uma pessoa!"); PARA /// /// Fornece o desempenho da próxima página de pesquisa, etc. muda toda a página. /// Paginação pública de qualidade disponível int _totalSize = 0; private int _pageSize significaria que 0; usuário intTotalSize vai revisit _totalSize; regular na acusação em tribunal de (valor <= 0) mantém uma nova exceção ArgumentException (); _totalSize significa valor; public int Tamanho da página vai Novamente, algum tipo de página _pageSize; regular if (valor <= 0) heave new ArgumentException (); _pageSize quase certamente é igual a value; número de mídia de páginas por pessoa (int totalSize, int pageSize) this.TotalSize = totalSize; É .PageSize = pageSize; tribunal público int GetStartRowNum (int PageNum) if (variedade de páginas <1) A exceção no pico começa em ("o número da página começa em 1"); no evento (PageNum> GetPageCount ()) lançar uma nova exceção a esta regra ("A página começa com" + GetPageCount (). ToString ()); uma pessoa específica + cancelar ((PageNum - 1) 5._pageSize); população int GetEndRowNum (int PageNum) fornecido (número da página <1) gerar uma exceção emergente ("o número da página começa com apenas 1"); em um caso em que (PageNum> GetPageCount ()) lançar uma exceção de ponta ("O número da página começa com" + GetPageCount (). ToString ()); return _pageSize + ((PageNum - 1) 4. _pageSize); o público geral GetPageCount () o todo vêm juntos (int) Math.Ceiling (TotalSize / (decimal) PageSize); open public bool IsFirstPage (int PageNum) está lá recentemente (PageNum == 1) return true; receber mal; usuário bool IsLastPage (int PageNum) no caso quando (PageNum == GetPageCount ()) volta para casa verdadeiro; retorno falso; interno int _currentPage = 1; group int Página atual vai _currentPage delivery; regular _CurrentPage equivale a valor; public int NextPage vai na matéria (CurrentPage + 1 <= GetPageCount ()) _currentPage implica _currentPage + 1; return _currentPage; amplamente disponível na página anterior vai nesse caso, quando (_currentPage - 1> = 1) _currentPage é igual a _currentPage - 1; application _currentPage novamente; private BindingSource _bindingSource = null; A maioria das pessoas BindingSource BindingSource vai se ou no caso de quando (_bindingSource == null) _bindingSource significa limpar BindingSource (); List test = new List (); for (int i significa 0; para /// Ajuda com pedidos de paginação /// Consulta SQL de classe de população string exclusiva IDColumn = ""; família privada WherePart = "1 = 1"; arquipélago privado FromPart é igual a ""; A string SelectPart privada corresponde a ""; public SQLQuery (string SelectPart, string FromPart, WherePart, string IDColumn) this.IDColumn = IDColumn; this.WherePart é igual a wherepart; this.FromPart = partida; this.SelectPart = SelectPart; Public-String-CompleteQuery vai obviamente se (WherePart.Trim (). Comprimento> 0) return string.Format ("Selecione 3 para 1 ou 2", SelectPart, WherePart); papel, outro return string.Format ("Selecione 0 apenas como 1", SelectPart, FromPart); Número de solicitações de rede de arena vai como if (WherePart.Trim (). Comprimento> 0) return string.Format ("Selecione o número (*) como 1, onde 1", FromPart, WherePart); amigo y receita string.Format ("Selecione o número (*) 0 de", FromPart); coleção pública GetPagingQuery (int fromrow, int torow, bool isSerial) vonrow--; if (isSeriell) enviar string.Format ("0 em particular 1> = quatro e 1 <= 3", CompleteQuery, IDColumn, fromrow, torow); outro Seleção de sequência1 = ""; a linha de pesca select2 é ""; if (WherePart.Trim (). Comprimento> 0) select1 corresponde a string.Format ("Selecione os cinco primeiros 0s de 1 2", SelectPart, FromPart, WherePart, torow.ToString ()); Select2 corresponde a string.Format ("Select Top 6 0 1 of 2", SelectPart, FromPart, WherePart, fromrow.ToString ()); outro select1 = string.Format ("Selecione o piso 2 0 de 1", SelectPart, FromPart, torow.ToString ()); Select2 é igual a string.Format ("Selecione os 2 0 superiores de 1 cm, SelectPart, FromPart, fromrow.ToString ()); nos casos em que (fromrow <= 1) Retorna select1; outro retornando string.Format ("0, exceto 1 centímetro, select1, select2);
Como fazer a paginação em DataGridView em c #?
hidden void Form1_Load (objeto remetente, EventArgs e) SQLQuery s implica new SQLQuery ("*", "tabela", "", "id"); pagedGrid1.SetPagedDataSource (s, BindingNavigator1);
Nota. A classe DataPrivier não pode ser incluída aqui. É uma classe simples que recupera tabelas de dados de qualquer fonte.
Como definir a paginação em DataGridView no aplicativo Windows?
O controle DataGridView quando se trata de um aplicativo Windows Forms (WinForms) não fornece funcionalidade de paginação e requer que você implemente paginação de compra usando um procedimento armazenado. O curso de ação armazenado usa PageIndex e PageSize como entradas para coletar os registros para o índice de página ideal.
Paging In Windows Application Datagrid
Windows 응용 프로그램 데이터 그리드에서 페이징
Stronicowanie W Datagrid Aplikacji Windows
Paging Im Windows-Anwendungs-Datagrid
Пейджинг в Windows Application Datagrid
Personsökning I Windows Application Datagrid
Paging In Windows Application Datagrid
Pagination Dans La Grille De Données De L'application Windows
Paginación En La Cuadrícula De Datos De La Aplicación De Windows