GridView.Columns Propriedade
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Obtém uma coleção de DataControlField objetos que representam os campos de coluna num GridView controlo.
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 de Propriedade
A DataControlFieldCollection que contém todos os campos de coluna no GridView controlo.
- Atributos
Exemplos
O exemplo seguinte demonstra como preencher a Columns coleção de forma declarativa.
<%@ 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>
Observações
Um campo de colunas representa uma coluna num GridView controlo. A Columns propriedade (coleção) é usada para armazenar todos os campos de coluna explicitamente declarados que são renderizados no GridView controlo. Também pode usar a Columns coleção para gerir programaticamente a coleção de campos de coluna.
Note
Campos de coluna explicitamente declarados podem ser usados em combinação com campos de coluna gerados automaticamente. Quando ambos são usados, os campos de coluna explicitamente declarados 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 das colunas são exibidos no GridView controlo pela ordem em que aparecem na Columns coleção. A tabela seguinte mostra as diferentes classes de campo coluna que derivam da DataControlField classe e que podem ser usadas na Columns coleção.
| Tipo de campo de coluna | Description |
|---|---|
| BoundField | Mostra o valor de um campo numa fonte de dados. Este é o tipo de coluna padrão do GridView controlo. |
| ButtonField | Mostra um botão de comando para cada item no GridView controlo. Isto permite-lhe criar uma coluna de controlos personalizados de botões, como o botão Adicionar ou Remover. |
| CheckBoxField | Mostra uma caixa de seleção para cada item no GridView controlo. Este tipo de campo coluna é comumente usado para exibir campos com valor booleano. |
| CommandField | Apresenta botões de comando pré-definidos para realizar operações de seleção, edição ou eliminação. |
| HyperLinkField | Apresenta o valor de um campo numa fonte de dados como um hiperlink. Este tipo de campo de coluna permite-lhe associar um segundo campo ao URL do hiperlink. |
| ImageField | Mostra uma imagem para cada item no GridView controlo. |
| TemplateField | Apresenta conteúdo definido pelo utilizador para cada item no GridView controlo, de acordo com um modelo especificado. Este tipo de campo de coluna permite-lhe criar um campo de coluna personalizado. |
Embora possas adicionar programaticamente campos de coluna à Columns coleção, é mais fácil listar os campos de coluna de forma declarativa no GridView controlo e depois usar a Visible propriedade de cada campo de coluna para mostrar ou esconder cada campo.
Se a Visible propriedade de um campo de coluna estiver definida para false, a coluna não é exibida no GridView controlo e os dados da coluna não fazem uma viagem de ida e volta ao cliente. Se quiser que os dados de uma coluna que não é visível façam uma viagem de ida e volta, adicione o nome do campo à DataKeyNames propriedade.