Compartilhar via


GridView.Columns Propriedade

Definição

Obtém uma coleção de objetos DataControlField que representam os campos de coluna em um controle GridView.

public:
 virtual property System::Web::UI::WebControls::DataControlFieldCollection ^ Columns { System::Web::UI::WebControls::DataControlFieldCollection ^ get(); };
[System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)]
public virtual System.Web.UI.WebControls.DataControlFieldCollection Columns { get; }
[<System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)>]
member this.Columns : System.Web.UI.WebControls.DataControlFieldCollection
Public Overridable ReadOnly Property Columns As DataControlFieldCollection

Valor da propriedade

Um DataControlFieldCollection que contém todos os campos de coluna no controle GridView.

Atributos

Exemplos

O exemplo a seguir demonstra como preencher a Columns coleção declarativamente.


<%@ Page language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>GridView Columns Example</title>
</head>
<body>
    <form id="form1" runat="server">
        
      <h3>GridView Columns Example</h3>

      <asp:gridview id="CustomersGridView" 
        datasourceid="CustomersSource" 
        autogeneratecolumns="true"
        emptydatatext="No data available." 
        runat="server">
        
        <columns>
          <asp:boundfield datafield="CustomerID" headertext="Customer ID"/>
          <asp:boundfield datafield="CompanyName" headertext="Company Name"/>
          <asp:boundfield datafield="Address" headertext="Address"/>
          <asp:boundfield datafield="City" headertext="City"/>
          <asp:boundfield datafield="PostalCode" headertext="Postal Code"/>
          <asp:boundfield datafield="Country" headertext="Country"/>
        </columns>
                
      </asp:gridview>
            
      <!-- This example uses Microsoft SQL Server and connects  -->
      <!-- to the Northwind sample database. Use an ASP.NET     -->
      <!-- expression to retrieve the connection string value   -->
      <!-- from the Web.config file.                            -->
      <asp:sqldatasource id="CustomersSource"
        selectcommand="Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]"
        connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>" 
        runat="server"/>
        
    </form>
  </body>
</html>

<%@ Page language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>GridView Columns Example</title>
</head>
<body>
    <form id="form1" runat="server">
        
      <h3>GridView Columns Example</h3>

      <asp:gridview id="CustomersGridView" 
        datasourceid="CustomersSource" 
        autogeneratecolumns="true"
        emptydatatext="No data available." 
        runat="server">
        
        <columns>
          <asp:boundfield datafield="CustomerID" headertext="Customer ID"/>
          <asp:boundfield datafield="CompanyName" headertext="Company Name"/>
          <asp:boundfield datafield="Address" headertext="Address"/>
          <asp:boundfield datafield="City" headertext="City"/>
          <asp:boundfield datafield="PostalCode" headertext="Postal Code"/>
          <asp:boundfield datafield="Country" headertext="Country"/>
        </columns>
                
      </asp:gridview>
            
      <!-- This example uses Microsoft SQL Server and connects  -->
      <!-- to the Northwind sample database. Use an ASP.NET     -->
      <!-- expression to retrieve the connection string value   -->
      <!-- from the Web.config file.                            -->
      <asp:sqldatasource id="CustomersSource"
        selectcommand="Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]"
        connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>" 
        runat="server"/>
        
    </form>
  </body>
</html>

Comentários

Um campo de coluna representa uma coluna em um GridView controle . A Columns propriedade (coleção) é usada para armazenar todos os campos de coluna declarados explicitamente que são renderizados no GridView controle . Você também pode usar a Columns coleção para gerenciar programaticamente a coleção de campos de coluna.

Observação

Campos de coluna declarados explicitamente podem ser usados em combinação com campos de coluna gerados automaticamente. Quando ambos são usados, os campos de coluna declarados explicitamente são renderizados primeiro, seguidos pelos campos de coluna gerados automaticamente. Os campos de coluna gerados automaticamente não são adicionados à Columns coleção.

Os campos de coluna são exibidos no GridView controle na ordem em que os campos de coluna aparecem na Columns coleção. A tabela a seguir mostra as diferentes classes de campo de coluna que derivam da DataControlField classe e podem ser usadas na Columns coleção.

Tipo de campo de coluna Descrição
BoundField Exibe o valor de um campo em uma fonte de dados. Esse é o tipo de coluna padrão do GridView controle.
ButtonField Exibe um botão de comando para cada item no GridView controle . Isso permite que você crie uma coluna de controles de botão personalizados, como o botão Adicionar ou Remover.
CheckBoxField Exibe uma caixa de seleção para cada item no GridView controle. Esse tipo de campo de coluna é comumente usado para exibir campos com um valor booliano.
CommandField Exibe botões de comando predefinidos para executar operações de seleção, edição ou exclusão.
HyperLinkField Exibe o valor de um campo em uma fonte de dados como um hiperlink. Esse tipo de campo de coluna permite que você associe um segundo campo à URL do hiperlink.
ImageField Exibe uma imagem para cada item no GridView controle .
TemplateField Exibe o conteúdo definido pelo usuário para cada item no GridView controle, de acordo com um modelo especificado. Esse tipo de campo de coluna permite que você crie um campo de coluna personalizado.

Embora você possa adicionar programaticamente campos de coluna à Columns coleção, é mais fácil listar os campos de coluna declarativamente no controle e, em GridView seguida, usar a Visible propriedade de cada campo de coluna para mostrar ou ocultar cada campo de coluna.

Se a Visible propriedade de um campo de coluna estiver definida falsecomo , a coluna não será exibida no GridView controle e os dados da coluna não farão uma viagem de ida e volta para o cliente. Se você quiser que os dados de uma coluna que não esteja visível façam uma viagem de ida e volta, adicione o nome do DataKeyNames campo à propriedade .

Aplica-se a

Confira também