GridView.Columns Propiedad

Definición

Obtiene una colección de objetos DataControlField que representan los campos de columna de un control 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 de propiedad

DataControlFieldCollection

DataControlFieldCollection que contiene todos los campos de columna del control GridView.

Atributos

Ejemplos

En el ejemplo siguiente se muestra cómo rellenar la Columns colección mediante declaración.


<%@ 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>

Comentarios

Un campo de columna representa una columna de un GridView control . La Columns propiedad (colección) se usa para almacenar todos los campos de columna declarados explícitamente que se representan en el GridView control . También puede usar la Columns colección para administrar mediante programación la colección de campos de columna.

Nota

Los campos de columna declarados explícitamente se pueden usar en combinación con campos de columna generados automáticamente. Cuando se usan ambos, los campos de columna declarados explícitamente se representan primero, seguidos de los campos de columna generados automáticamente. Los campos de columna generados automáticamente no se agregan a la Columns colección.

Los campos de columna se muestran en el GridView control en el orden en que los campos de columna aparecen en la Columns colección. En la tabla siguiente se muestran las distintas clases de campo de columna que derivan de la DataControlField clase y se pueden usar en la Columns colección.

Tipo de campo de columna Descripción
BoundField Muestra el valor de un campo en un origen de datos. Este es el tipo de columna predeterminado del GridView control.
ButtonField Muestra un botón de comando para cada elemento del GridView control. Esto le permite crear una columna de controles de botón personalizados, como el botón Agregar o Quitar.
CheckBoxField Muestra una casilla para cada elemento del GridView control. Este tipo de campo de columna se usa normalmente para mostrar campos con un valor booleano.
CommandField Muestra los botones de comando predefinidos para realizar operaciones de selección, edición o eliminación.
HyperLinkField Muestra el valor de un campo de un origen de datos como hipervínculo. Este tipo de campo de columna permite enlazar un segundo campo a la dirección URL del hipervínculo.
ImageField Muestra una imagen para cada elemento del GridView control .
TemplateField Muestra el contenido definido por el usuario para cada elemento del GridView control, según una plantilla especificada. Este tipo de campo de columna permite crear un campo de columna personalizado.

Aunque puede agregar campos de columna a la Columns colección mediante programación, es más fácil enumerar los campos de columna mediante declaración en el GridView control y, a continuación, usar la Visible propiedad de cada campo de columna para mostrar u ocultar cada campo de columna.

Si la Visible propiedad de un campo de columna se establece falseen , la columna no se muestra en el GridView control y los datos de la columna no realizan un recorrido de ida y vuelta al cliente. Si desea que los datos de una columna que no sean visibles para realizar un recorrido de ida y vuelta, agregue el nombre del campo a la DataKeyNames propiedad .

Se aplica a

Consulte también