GridViewRowCollection.CopyTo(GridViewRow[], Int32) 方法

定义

GridViewRowCollection 对象中的指定索引位置开始,将此 Array 中的所有项复制到指定的 Array 对象。

public:
 void CopyTo(cli::array <System::Web::UI::WebControls::GridViewRow ^> ^ array, int index);
public void CopyTo (System.Web.UI.WebControls.GridViewRow[] array, int index);
member this.CopyTo : System.Web.UI.WebControls.GridViewRow[] * int -> unit
Public Sub CopyTo (array As GridViewRow(), index As Integer)

参数

array
GridViewRow[]

一个基于零的 Array 对象,它接收从 GridViewRowCollection 对象复制来的项。

index
Int32

指定的 Array 对象中接收复制内容的第一个索引位置。

示例

以下示例演示如何使用 CopyTo 方法将集合的项复制到数组中。 数组循环访问,第一个单元格的值将显示在页面上。


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

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

  void AuthorsGridView_RowCreated(Object sender, GridViewRowEventArgs e)
  {
    if (e.Row.RowType == DataControlRowType.Footer)
    {
      Message.Text = "The authors are:<br />";
      
      // Copy the items in the Rows collection into an array.
      GridViewRow[] rowArray = new GridViewRow[AuthorsGridView.Rows.Count]; 
      AuthorsGridView.Rows.CopyTo(rowArray, 0);

      // Iterate though the array and display the value in the
      // first cell of the row.
      foreach(GridViewRow row in rowArray)
      {
        Message.Text += row.Cells[0].Text + "<br />";
      }
    }
  }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>GridViewRowCollection CopyTo Example</title>
</head>
<body>
    <form id="form1" runat="server">
        
      <h3>GridViewRowCollection CopyTo Example</h3>

      <table>
        <tr>
          <td>
            <asp:gridview id="AuthorsGridView" 
              datasourceid="AuthorsSqlDataSource" 
              autogeneratecolumns="false"
              onrowcreated="AuthorsGridView_RowCreated"  
              runat="server"> 
                     
              <columns>
                <asp:boundfield datafield="au_lname"
                  headertext="Last Name"/>
                <asp:boundfield datafield="au_fname"
                  headertext="First Name"/>
              </columns>
                                    
            </asp:gridview>
          </td>
          <td>
            <asp:label id="Message" 
              forecolor="Red"
              runat="server"/>
          </td>
        </tr>
      </table>
            
      <!-- This example uses Microsoft SQL Server and connects -->
      <!-- to the Pubs sample database.                        -->
      <asp:sqldatasource id="AuthorsSqlDataSource"  
        selectcommand="SELECT [au_lname], [au_fname] FROM [authors] WHERE [state]='CA'"
        connectionstring="server=localhost;database=pubs;integrated security=SSPI"
        runat="server">
      </asp:sqldatasource>
          
    </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">
<script runat="server">

  Sub AuthorsGridView_RowCreated(ByVal sender As Object, ByVal e As GridViewRowEventArgs)

    If e.Row.RowType = DataControlRowType.Footer Then
    
      Message.Text = "The authors are:<br />"
      
      ' Copy the items in the Rows collection into an array.
      Dim rowArray(AuthorsGridView.Rows.Count - 1) As GridViewRow
      AuthorsGridView.Rows.CopyTo(rowArray, 0)

      ' Iterate though the array and display the value in the
      ' first cell of the row.
      Dim row As GridViewRow
      For Each row In rowArray
      
        Message.Text &= row.Cells(0).Text & "<br />"
      
      Next
      
    End If
      
  End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>GridViewRowCollection CopyTo Example</title>
</head>
<body>
    <form id="form1" runat="server">
        
      <h3>GridViewRowCollection CopyTo Example</h3>

      <table>
        <tr>
          <td>
            <asp:gridview id="AuthorsGridView" 
              datasourceid="AuthorsSqlDataSource" 
              autogeneratecolumns="false"
              onrowcreated="AuthorsGridView_RowCreated"  
              runat="server"> 
                     
              <columns>
                <asp:boundfield datafield="au_lname"
                  headertext="Last Name"/>
                <asp:boundfield datafield="au_fname"
                  headertext="First Name"/>
              </columns>
                                    
            </asp:gridview>
          </td>
          <td>
            <asp:label id="Message" 
              forecolor="Red"
              runat="server"/>
          </td>
        </tr>
      </table>
            
      <!-- This example uses Microsoft SQL Server and connects -->
      <!-- to the Pubs sample database.                        -->
      <asp:sqldatasource id="AuthorsSqlDataSource"  
        selectcommand="SELECT [au_lname], [au_fname] FROM [authors] WHERE [state]='CA'"
        connectionstring="server=localhost;database=pubs;integrated security=SSPI"
        runat="server">
      </asp:sqldatasource>
          
    </form>
  </body>
</html>

注解

使用此方法将 对象中的 GridViewRowCollection 项复制到指定对象中,从指定的 System.Array 索引开始。 然后, System.Array 可以使用 对象访问集合中的项。

注意

必须为 参数使用从零开始 System.Array 的对象 array

适用于

另请参阅