Visão geral dos controles do servidor ASP.NET

Antes de passar para o ASP.Net Server Controls, vamos revisar o que são controles. Controles são pequenos blocos de código que podem ser usados ​​em uma página da web para executar a tarefa a que se destinam. Por exemplo, você deseja que o usuário insira uma senha, use um Controle de Senha. Ele vem pré-embalado com seus próprios estilos e validações.

De maneira semelhante, os Controles do Servidor ASP.Net são controles executados no servidor. Eles são simplesmente tags semelhantes a HTML que são entendidas pelo servidor. Assim que o servidor encontra uma dessas tags, ele sabe o que exibir, como exibir e quais atividades e eventos acionar. Obviamente, como desenvolvedor, você pode sobrescrever o estilo, eventos e ações padrão.

Recursos dos controles do servidor ASP.NET

  • Gerenciamento automático de estado - Os valores dos controles são retidos nas viagens de ida e volta ao servidor.
  • Acesso simples ao valor do objeto - O acesso ao valor do objeto é bastante simples através de controles, em vez do método convencional de usar o objeto Request.
  • Eventos - Os controles reagem a eventos no código do servidor, o que ajuda a lidar com ações específicas do usuário de maneira estruturada.
  • Complexidade simplificada - interfaces de usuário complexas são criadas com controles simples pré-configurados para executar as ações mais comuns.
  • Escrever uma vez renderizar em qualquer lugar - As páginas da Web criadas por meio de controles são otimizadas para renderização em qualquer tipo de dispositivo ou navegador. O layout e a marcação na saída são criados automaticamente com base nos recursos do navegador.

Categorias de controles do servidor ASP.NET

A estrutura de página do ASP.Net oferece suporte a vários controles. Os controles do servidor ASP.NET são amplamente classificados em 4 categorias:

1. Controles do servidor HTML

Os controles do servidor HTML são atributos HTML que são instruídos para serem processados ​​no lado do servidor. Isso significa essencialmente que o controle tem a mesma saída e propriedades dos atributos HTML tradicionais correspondentes, mas com recursos de computação adicionais para eventos a serem processados ​​no lado do servidor.

Para resumir, as tags HTML tradicionais aprimoradas para serem processadas no lado do servidor são denominadas como Controles do Servidor HTML.

Um exemplo de um controle de servidor HTML

Tag HTML tradicional

Controle de servidor HTML

Agora você pode estar se perguntando como um atributo runat = "server" pode transformar uma tag HTML tradicional em um controle de servidor HTML? Bem, o ASP.Net trata todos os elementos HTML como texto sem formatação. A execução no atributo indica que o elemento deve ser tratado como um controle, tornando-o programável no servidor. Os elementos com esse atributo também são acessíveis pelos scripts do lado do servidor.

Quando o código do ASP.Net é compilado, os elementos com o atributo runat = "server" também são compilados no assembly. E para os elementos que não possuem esse atributo, eles são adicionados ao assembly como controles HTML genéricos.

Nota - Todos os controles do servidor HTML devem ser colocados entre as tags….

Vantagens dos controles de servidor HTML

Os controles do servidor HTML fornecem as seguintes vantagens:

  • Os controles mapeiam um para um com suas tags HTML correspondentes.
  • A maioria dos controles possui um gatilho de evento OnServer para o evento mais comum do controle. Por exemplo, os botões têm um OnServerClick. O desenvolvedor simplesmente precisa escrever seu código nas funções de gatilho.
  • Todos os controles de servidor HTML derivam da classe base Web.UI.HtmlControl. Assim, eles herdam todos os recursos e métodos básicos do Controle HTML.
  • A marcação dos controles é semelhante às tags HTML nativas, facilitando o uso e a compreensão.
  • Os controles são agrupados na caixa de ferramentas do Visual Studio, facilitando o uso em seu aplicativo.

2. Controles do servidor Web

Os controles do servidor da Web são semelhantes aos controles do servidor HTML em termos da saída gerada. No entanto, os controles do servidor Web são marcas ASP padronizadas. Eles também são compilados no lado do servidor e requerem um atributo runat = "server" semelhante.

Um exemplo de um controle de servidor da Web

Controle de Servidor Web

HTML Server Control

Nota - Nem todos os Controles da Web necessariamente são mapeados para um Controle HTML correspondente. Às vezes, os controles da Web são mais complexos que os controles HTML nativos.

Vantagens dos controles de servidor da Web

Os controles do servidor da Web oferecem as seguintes vantagens:

  • Os controles são mapeados (principalmente, mas nem sempre) para seus elementos HTML correspondentes. Isso facilita para os desenvolvedores gerar automaticamente uma interface do usuário.
  • Como os controles são pré-empacotados com elementos HTML interativos, o processo de criação de formulários da Web se torna menos propenso a erros e é mais consistente.
  • Todos os controles de servidor da Web derivam da classe base Web.UI.WebControls.WebControl. Assim, eles herdam todos os recursos e métodos básicos do Web Control.
Os controles do servidor da Web são divididos em quatro categorias:
  • Controles básicos da Web
  • Controles de validação
  • Controles da lista
  • Controles avançados

uma. Controles básicos da Web

Os controles básicos da Web são semelhantes aos controles do servidor HTML. Eles fornecem a mesma funcionalidade com métodos, eventos e propriedades adicionais, que os desenvolvedores podem aproveitar para escrever seu próprio código.

Exemplos de controles básicos da Web

Controle de botão

HyperLink Control
Label Control

b. Controles de validação

Os controles de validação no ASP.Net são usados ​​para validar as entradas pelo usuário. Esses controles podem executar validações predefinidas e personalizadas. Dependendo da compatibilidade do navegador, as validações são executadas no lado do cliente ou no servidor. Essa decisão é executada automaticamente pelos controles. A validação do lado do cliente é realizada no navegador do cliente, ou seja, antes de uma chamada de postagem posterior ser acionada para o servidor. A validação do servidor é realizada após o envio do formulário ao servidor.

Controles de validação não são controles independentes. Em vez disso, eles estão associados a outros controles na página da web ou no formulário da web. Mais de um controle de validação pode ser associado a cada controle a ser validado. A validação é realizada quando o usuário envia a página ou o formulário.

Exemplos de controles de validação

Validador de campo obrigatório

Compare Validator

c. Controles da lista

Controles de lista são controles especiais que geram layouts de lista pré-formatados. Esses controles são vinculados às coleções e exibem os dados coletados em linhas de um formato personalizado ou de modelo. Por esse motivo, os controles de lista são vinculados apenas a coleções que implementam interfaces IEnumerable, ICollection ou IListSource. Os dados a serem vinculados aos controles da lista são definidos pelas propriedades DataSource e DataMember.

Exemplo

Public void Page_Load()( count_rptr.DataSource = new String() ("Uno", "Due", "Tre"); count_rptr.DataBind();)

O código acima produzirá Uno, Due, Tre, como uma lista que abrange três linhas.

d. Controles avançados

Rich Web Controls são controles HTML complexos que visam fornecer uma rica experiência ao usuário. Esses são controles específicos da tarefa. Diferentemente dos controles HTML nativos do formulário da Web simples, os Controles Rich executam uma tarefa complexa. Pode ser um conjunto de vários controles HTML simples ou um layout mais aprimorado. Exemplos de controles avançados são controle de calendário, controle XML, controle AdRotator etc.

O controle de calendário é responsável por mostrar um elemento selecionador de data que o usuário pode usar de maneira muito conveniente para selecionar uma data.

O controle XML gera um layout XML para os dados fornecidos. O layout XML é um layout controlado por tags no qual os dados são colocados entre as tags. Essas tags servem como chaves, enquanto os dados dentro servem como valores.

O controle AdRotator é responsável por exibir um banner de anúncio na página da web.

3. Controles do usuário

O ASP.Net também facilita o desenvolvedor a criar seu próprio pacote de controles internos que podem ser reutilizados. Isso ajuda muito os desenvolvedores quando desejam reutilizar a interface da página da web atual em outra. O ASP.Net nos permite converter nossos WebForms em controles de usuário. Para conseguir isso, o ASP.Net salva os formulários da Web com extensão .ascx. Esses arquivos .ascx podem ser usados ​​várias vezes em um único formulário da Web.

Etapas para criar seu próprio controle de usuário:

  1. Remova qualquer,,, e
  2. Altere a diretiva @Page para @Control
  3. (Opcional) Inclua um atributo className na diretiva @Control para digitar fortemente sua diretiva na classe.
  4. Salve o controle com .ascx

4. Controles Personalizados

Além do amplo conjunto de controles internos, o ASP.Net também permite definir seu próprio controle personalizado. Um controle personalizado é um dos três:

  • Uma combinação de dois ou mais controles internos.
  • Uma extensão para um controle interno.
  • Um código totalmente novo que funciona como um controle específico.

Artigos recomendados

Este é um guia para controles do servidor ASP.NET. Aqui discutimos os recursos e as diferentes categorias de controles do servidor ASP.NET, além das vantagens e exemplos. Você também pode consultar os seguintes artigos para saber mais -

  1. Framework ASP.NET
  2. Controles de validação do ASP.Net
  3. Carreira no ASP.NET
  4. O que é o ASP.Net Web Services?