Freigeben über


DataGridColumnCollection.Clear-Methode

Entfernt sämtliche von DataGridColumn abgeleiteten Spaltenobjekte aus der DataGridColumnCollection-Auflistung.

Namespace: System.Web.UI.WebControls
Assembly: System.Web (in system.web.dll)

Syntax

'Declaration
Public Sub Clear
'Usage
Dim instance As DataGridColumnCollection

instance.Clear
public void Clear ()
public:
void Clear ()
public void Clear ()
public function Clear ()

Hinweise

Mit dieser Methode entfernen Sie alle von DataGridColumn abgeleiteten Spaltenobjekte aus der DataGridColumnCollection-Auflistung.

Hinweis

Die Count-Eigenschaft wird automatisch auf 0 festgelegt, nachdem diese Methode verwendet wurde.

Beispiel

Im folgenden Codebeispiel wird veranschaulicht, wie mit der Clear-Methode die DataGridColumnCollection-Auflistung geleert wird, bevor der Auflistung neue Spalten hinzugefügt werden.

<%@ Page Language="VB" AutoEventWireup="True" %>
<%@ Import Namespace="System.Data" %>
 
<html>
   <script language="VB" runat="server">
 
        Function CreateDataSource() As ICollection
            Dim dt As New DataTable()
            Dim dr As DataRow
            
            dt.Columns.Add(New DataColumn("IntegerValue", GetType(Int32)))
            dt.Columns.Add(New DataColumn("StringValue", GetType(String)))
            dt.Columns.Add(New DataColumn("CurrencyValue", GetType(Double)))
            
            Dim i As Integer
            For i = 0 To 8
                dr = dt.NewRow()
                
                dr(0) = i
                dr(1) = "Item " + i.ToString()
                dr(2) = 1.23 *(i + 1)
                
                dt.Rows.Add(dr)
            Next i
            
            Dim dv As New DataView(dt)
            Return dv
        End Function 'CreateDataSource


        Sub Page_Init(sender As Object, e As EventArgs)
            
            ' Empty DataGridColumnsCollection collection. 
            ItemsGrid.Columns.Clear()
            
            ' Create dynamic columns to add to Columns collection.
            Dim IntegerColumn As New BoundColumn()
            Dim StringColumn As New BoundColumn()
            Dim PriceColumn As New BoundColumn()
            
            IntegerColumn.HeaderText = "Item Number"
            IntegerColumn.DataField = "IntegerValue"
            
            StringColumn.HeaderText = "Item"
            StringColumn.DataField = "StringValue"
            
            PriceColumn.HeaderText = "Price"
            PriceColumn.DataField = "CurrencyValue"
            
            ' Add columns to Columns collection.
            ItemsGrid.Columns.Add(IntegerColumn)
            ItemsGrid.Columns.Add(StringColumn)
            ItemsGrid.Columns.Add(PriceColumn)

        End Sub 'Page_Init
         

        Sub Page_Load(sender As Object, e As EventArgs)
            
            If Not IsPostBack Then

                ' Load this data only once
                ItemsGrid.DataSource = CreateDataSource()
                ItemsGrid.DataBind()

            End If
        End Sub 'Page_Load 
   
   </script>
 
<body>
 
   <form runat=server>
 
      <h3>DataGridColumnCollection Clear Example</h3>
 
      <b>Product List</b>
 
      <asp:DataGrid id="ItemsGrid"
           BorderColor="black"
           BorderWidth="1"
           CellPadding="3"
           AutoGenerateColumns="false"
           runat="server">

         <HeaderStyle BackColor="#00aaaa">
         </HeaderStyle>
 
         <Columns>
                  
            <asp:BoundColumn 
                 HeaderText="Item Number" 
                 DataField="IntegerValue"/>
 
            <asp:BoundColumn 
                 HeaderText="Item" 
                 DataField="StringValue"/>
 
            <asp:BoundColumn 
                 HeaderText="Price" 
                 DataField="CurrencyValue" 
                 DataFormatString="{0:c}">

               <ItemStyle HorizontalAlign="right">
               </ItemStyle>

            </asp:BoundColumn>
 
         </Columns>
   
      </asp:DataGrid>    
 
   </form>
 
</body>
</html>
<%@ Page Language="C#" AutoEventWireup="True" %>
<%@ Import Namespace="System.Data" %>
 
<html>
   <script language="C#" runat="server">
 
      ICollection CreateDataSource() 
      {
         DataTable dt = new DataTable();
         DataRow dr;
 
         dt.Columns.Add(new DataColumn("IntegerValue", typeof(Int32)));
         dt.Columns.Add(new DataColumn("StringValue", typeof(string)));
         dt.Columns.Add(new DataColumn("CurrencyValue", typeof(double)));
 
         for (int i = 0; i < 9; i++) 
         {
            dr = dt.NewRow();
   
            dr[0] = i;
            dr[1] = "Item " + i.ToString();
            dr[2] = 1.23 * (i + 1);
 
            dt.Rows.Add(dr);
         }
 
         DataView dv = new DataView(dt);
         return dv;
      }

      void Page_Init(Object sender, EventArgs e) 
      {

         // Empty DataGridColumnsCollection collection. 
         ItemsGrid.Columns.Clear();

         // Create dynamic columns to add to Columns collection.
         BoundColumn IntegerColumn = new BoundColumn();
         BoundColumn StringColumn = new BoundColumn();
         BoundColumn PriceColumn = new BoundColumn();

         IntegerColumn.HeaderText="Item Number"; 
         IntegerColumn.DataField="IntegerValue";

         StringColumn.HeaderText="Item"; 
         StringColumn.DataField="StringValue";

         PriceColumn.HeaderText="Price"; 
         PriceColumn.DataField="CurrencyValue";

         // Add columns to Columns collection.
         ItemsGrid.Columns.Add(IntegerColumn);
         ItemsGrid.Columns.Add(StringColumn);
         ItemsGrid.Columns.Add(PriceColumn);

      } 
 
      void Page_Load(Object sender, EventArgs e) 
      {
 
         if (!IsPostBack) 
         {
            // Load this data only once.
            ItemsGrid.DataSource= CreateDataSource();
            ItemsGrid.DataBind();
         }

      }
   
   </script>
 
<body>
 
   <form runat=server>
 
      <h3>DataGridColumnCollection Clear Example</h3>
 
      <b>Product List</b>
 
      <asp:DataGrid id="ItemsGrid"
           BorderColor="black"
           BorderWidth="1"
           CellPadding="3"
           AutoGenerateColumns="false"
           runat="server">

         <HeaderStyle BackColor="#00aaaa">
         </HeaderStyle>
 
         <Columns>
                  
            <asp:BoundColumn 
                 HeaderText="Item Number" 
                 DataField="IntegerValue"/>
 
            <asp:BoundColumn 
                 HeaderText="Item" 
                 DataField="StringValue"/>
 
            <asp:BoundColumn 
                 HeaderText="Price" 
                 DataField="CurrencyValue" 
                 DataFormatString="{0:c}">

               <ItemStyle HorizontalAlign="right">
               </ItemStyle>

            </asp:BoundColumn>
 
         </Columns>
   
      </asp:DataGrid>    
 
   </form>
 
</body>
</html>

Plattformen

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

Siehe auch

Referenz

DataGridColumnCollection-Klasse
DataGridColumnCollection-Member
System.Web.UI.WebControls-Namespace
DataGrid-Klasse
DataGrid.Columns-Eigenschaft
DataGridColumn-Klasse
Add
AddAt
Remove
RemoveAt