Você está aqui: ASP.NET ::: ASP.NET Data Controls (Controles de Dados) :::

Como implementar a ordenação básica das colunas de um controle <asp:GridView>

Quantidade de visualizações: 9522 vezes
O controle <asp:GridView> fornece uma funcionalidade de ordenação embutida sem precisarmos escrever nenhuma linha de código. No entanto, a processo de ordenação não é feito no controle GridView, mas sim na fonte de dados (SqlDataSource, AccessDataSource, etc) à qual ele está ligado. É importante observar que se a fonte de dados não fornecer formas de ordenar os valores das colunas, nada acontecerá quando o usuário clicar nos links nos títulos destas. O controle XmlDataSource, por exemplo, não fornece formas de ordenar seus dados.

Vamos então implementar a ordenação das colunas de um <asp:GridView>? Para este exemplo vou usar uma tabela do SQL Server chamada "clientes" com os campos "id", "nome", "cidade" e "estado". Quando o usuário clicar em uma determinada coluna do controle GridView a página ASP.NET sofrerá um postback e, quando carregada novamente, os dados já serão exibidos classificados de acordo com a coluna escolhida.

Veja o código para a página Default.aspx:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

<%@ Page Language="C#" AutoEventWireup="true"  
CodeFile="Default.aspx.cs" Debug="true"
Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
    <title>Estudos ASP.NET</title>
</head>
<body>

<form id="form1" runat="server">
  
<asp:SqlDataSource ID="SqlDataSource1" runat="server" 
   ConnectionString="Data Source=NOTEBOOK;Initial Catalog=estudos;
     Integrated Security=True"
   SelectCommand="SELECT * FROM clientes ORDER BY nome">
</asp:SqlDataSource><br />

<asp:GridView ID="GridView1" runat="server"
  AutoGenerateColumns="False"
  DataSourceID="SqlDataSource1"
  AllowSorting="true">
  <Columns>
    <asp:BoundField DataField="id" HeaderText="Código"
      SortExpression="id" />
    <asp:BoundField DataField="nome" HeaderText="Nome"
      SortExpression="nome" />
    <asp:BoundField DataField="cidade" HeaderText="Cidade"
      SortExpression="cidade" />
    <asp:BoundField DataField="estado" HeaderText="Estado"
      SortExpression="estado" />
  </Columns>
</asp:GridView> 
  
</form>

</body>
</html>

Execute o exemplo e experimente clicar nos títulos das colunas da tabela HTML gerada. Note que, se você clicar em uma coluna ordenada de forma ascendente ela agora será ordenada de forma descendente.

Para que um controle DataGrid possa ter suas colunas ordenadas em tempo de execução devemos definir o valor true para sua propriedade AllowSorting. Além disso, devemos informar a expressão de ordenação para a propriedade SortExpression de cada uma das colunas envolvidas. Para manter a simplicidade deste exemplo eu informei apenas os nomes dos campos na tabela.

Link para compartilhar na Internet ou com seus amigos:

Vamos testar seus conhecimentos em

Dimensionamento de pilares de extremidade

As solicitações que ocorrem num pilar de extremidade podem ser as forças normais e os momentos fletores. No método de dimensionamento do pilar-padrão com curvatura aproximada, considera-se um momento mínimo que deverá ser comparado com os demais momentos de 1ª ordem.

Diante do exposto, qual é o valor do momento mínimo nas direções x e y do pilar de extremidade apresentado na figura a seguir?



A) M1d, mín, x = 4025,65KN.cm; M1d, mín, y = 2499,5KN.cm.

B) M1d, mín, x = 1585,25KN.cm; M1d, mín, y = 2389,21KN.cm.

C) M1d, mín, x = 2500KN.cm; M1d, mín, y = 3056,5KN.cm.

D) M1d, mín, x = 2028,6KN.cm; M1d, mín, y = 3056,5KN.cm.

E) M1d, mín, x = 2028,6KN.cm; M1d, mín, y = 2499KN.cm.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Python

Qual o resultado da execução do seguinte código Python?

# cria uma string
palavra = "ESTUDAR"
letras = ['A', 'B', 'C']
letras[0], letras[2] = palavra[3], palavra[1]
print(letras)

A) ['T', 'B', 'S']

B) Um erro TypeError: 'tuple' object does not support item assignment

C) ['B', 'A', 'C']

D) ['U', 'B', 'S']

E) Um erro TypeError: 'str' object is not callable
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em

Dimensionamento de pilares de extremidade

É importante detalhar as armaduras longitudinais e transversais de um pilar de extremidade durante a concretagem dessas estruturas, evitando futuras patologias. Para isso, é importante que o projetista atenda aos requisitos normativos desse detalhamento.

Sobre o detalhamento de armaduras de pilares de extremidade, assinale a alternativa correta.

A) O máximo espaçamento permitido entre as barras longitudinais corresponde a 500mm.

B) O espaçamento mínimo permitido entre as barras transversais corresponde a 5mm.

C) O diâmetro da armadura transversal deve ser maior ou igual a 5mm ou 1/4 do diâmetro da barra longitudinal.

D) O diâmetro máximo da barra longitudinal corresponde a 12,5mm e a 1/8 da barra transversal.

E) Para armaduras de aço CA-50, o espaçamento vertical corresponde a 25 vezes o diâmetro da barra transversal.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Engenharia Civil - Estruturas de Aço e Madeira

Estrutura e propriedade dos materiais

A determinação e o conhecimento dos materiais são muito importantes para a escolha do material para determinada aplicação.

Essa escolha é a partir:

A) de um banco de dados obtidos por meio de ensaios laboratoriais.

B) da análise do agrupamento e da organização dos átomos.

C) da estrutura interna do material.

D) da análise das características físicas do material.

E) da avaliação da composição química dos materiais.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Fundações

Fundações profundas

As estacas Strauss podem ser armadas com ferragem longitudinal (barras retas) e estribos que permitam livre passagem do soquete de compactação e garantam um cobrimento da armadura não inferior a 3cm.

A estaca Strauss é recomendada:

A) apenas em terrenos com comprimento fixo de cravação.

B) em trabalhos abaixo do lençol freático.

C) em terrenos com comprimento variável de cravação.

D) com a disponibilidade de equipamentos robustos e complexos na execução.

E) em áreas não suscetíveis à presença de agentes biológicos.
Verificar Resposta Estudar Cards Todas as Questões

Veja mais Dicas e truques de ASP.NET

Dicas e truques de outras linguagens

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento
Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidadesControle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades
Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: Delphi
6º lugar: C
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2024 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 25 usuários muito felizes estudando em nosso site.