DataGridColumnCollection.Clear メソッド

DataGridColumnCollection コレクションからすべての DataGridColumn の派生列オブジェクトを削除します。

名前空間: System.Web.UI.WebControls
アセンブリ: System.Web (system.web.dll 内)

構文

'宣言
Public Sub Clear
'使用
Dim instance As DataGridColumnCollection

instance.Clear
public void Clear ()
public:
void Clear ()
public void Clear ()
public function Clear ()
適用できません。

解説

このメソッドを使用して、DataGridColumnCollection コレクションからすべての DataGridColumn 派生列オブジェクトを削除します。

メモメモ :

このメソッドを使用した後は、Count プロパティが自動的に 0 に設定されます。

使用例

コレクションに新しい列を追加する前に、Clear メソッドを使用して DataGridColumnCollection コレクションを空にする方法を次のコード例に示します。

<%@ Page Language="VB" AutoEventWireup="True" %>
<%@ Import Namespace="System.Data" %>
 
<!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" >
   <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>
 
<head runat="server">
    <title>DataGridColumnCollection Clear Example</title>
</head>
<body>
 
   <form id="form1" 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" %>
 
<!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" >
   <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>
 
<head runat="server">
    <title>DataGridColumnCollection Clear Example</title>
</head>
<body>
 
   <form id="form1" 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>

プラットフォーム

Windows 98,Windows Server 2000 SP4,Windows CE,Windows Millennium Edition,Windows Mobile for Pocket PC,Windows Mobile for Smartphone,Windows Server 2003,Windows XP Media Center Edition,Windows XP Professional x64 Edition,Windows XP SP2,Windows XP Starter Edition

Microsoft .NET Framework 3.0 は Windows Vista,Microsoft Windows XP SP2,および Windows Server 2003 SP1 でサポートされています。

バージョン情報

.NET Framework

サポート対象 : 3.0,2.0,1.1,1.0

参照

関連項目

DataGridColumnCollection クラス
DataGridColumnCollection メンバ
System.Web.UI.WebControls 名前空間
DataGrid
DataGrid.Columns プロパティ
DataGridColumn
Add
AddAt
Remove
RemoveAt