Redigera

Dela via


TableRowCollection.CopyTo(Array, Int32) Method

Definition

Copies the items from the TableRowCollection to the specified Array, starting with the specified index in the Array.

public:
 virtual void CopyTo(Array ^ array, int index);
public void CopyTo (Array array, int index);
abstract member CopyTo : Array * int -> unit
override this.CopyTo : Array * int -> unit
Public Sub CopyTo (array As Array, index As Integer)

Parameters

array
Array

A zero-based Array that receives the copied items from the TableRowCollection.

index
Int32

The first position in the specified Array to receive copied contents.

Implements

Examples

The following example demonstrates how to use the CopyTo method to copy the items from the TableRowCollection into the specified array.

<%@ Page Language="C#" %>
<%@ Import Namespace="System.Text" %>

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

<script runat="server">
    void Page_Load(object sender, EventArgs e)
    {
        int numRows = 5;
        int numCells = 6;
        int counter = 1;
        ArrayList a_row = new ArrayList();

        // Create a table.
        for (int rowNum = 0; rowNum < numRows; rowNum++)
        {
            TableRow rw = new TableRow();
            int cellNum = 0;
            for (cellNum = 0; cellNum < numCells; cellNum++)
            {
                TableCell cel = new TableCell();
                cel.Text = counter.ToString();
                rw.Cells.Add(cel);
                counter++;
            }
            Table1.Rows.Add(rw);
        }
    }

    void Button_Click(object sender, EventArgs e)
    {
        int rowCounter = 0;
        TableRow[] myRowArray = null;
        TableCell[] myCellArray = null;
        StringBuilder tb = new StringBuilder();

        // Copy the Rows collection to an array.
        Table1.Rows.CopyTo(myRowArray, 0);

        tb.Append("The copied items from the table are: \n");

        // Iterate through the TableRows in the array.
        foreach (TableRow rw in myRowArray)
        {
            // Copy the Cells collection of a row to an array.
            Table1.Rows[rowCounter].Cells.CopyTo(myCellArray, 0);

            // Iterate through the cell array 
            // and display its contents.
            foreach (TableCell cell in myCellArray)
                tb.Append(cell.Text + ", ");

            Label1.Text = tb.ToString();
            rowCounter++;
        }
    }
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
    <title>TableCellCollection Example</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <h3>TableCellCollection Example</h3>
        <asp:Table id="Table1" runat="server"/>
        <br /> <br />
        <asp:Button id="Button1"
            Text="Copy Table to Array"
            OnClick="Button_Click"
            runat="server"/>
        <br /> <br />
        <asp:Label id="Label1" runat="server"/>
    </div>
    </form>
</body>
</html>
<%@ Page Language="VB" %>
<%@ Import Namespace="System.Text" %>

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

<script runat="server">
    Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
        Dim numRows As Integer = 5
        Dim numCells As Integer = 6
        Dim counter As Integer = 1
        Dim a_row As New ArrayList()
            
        ' Create a table.
        Dim rowNum As Integer
        For rowNum = 0 To numRows - 1
            Dim rw As New TableRow()
            Dim cellNum As Integer
            For cellNum = 0 To numCells - 1
                Dim cel As New TableCell()
                cel.Text = counter.ToString()
                rw.Cells.Add(cel)
                counter += 1
            Next
            Table1.Rows.Add(rw)
        Next
    End Sub

    Sub Button_Click(ByVal sender As Object, ByVal e As EventArgs)
        Dim rowCounter As Integer = 0
        Dim myRowArray(4) As TableRow
        Dim myCellArray(5) As TableCell
        Dim tb As New StringBuilder

        ' Copy the Rows collection to an array.
        Table1.Rows.CopyTo(myRowArray, 0)

        tb.Append("The copied items from the table are: <br />")

        ' Iterate through the TableRows in the array.
        Dim rw As TableRow
        For Each rw In myRowArray
            ' Copy the Cells collection of a row to an array.
            Table1.Rows(rowCounter).Cells.CopyTo(myCellArray, 0)

            ' Iterate through the cell array 
            ' and display its contents.
            Dim cell As TableCell
            For Each cell In myCellArray
                tb.Append(cell.Text & ", ")
            Next
            Label1.Text = tb.ToString()

            rowCounter += 1
        Next
    End Sub
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
    <title>TableCellCollection Example</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <h3>TableCellCollection Example</h3>
        <asp:Table id="Table1" runat="server" />
        <br /> <br />
        <asp:Button id="Button1"
            Text="Copy Table to Array"
            OnClick="Button_Click"
            runat="server"/>
        <br /> <br />
        <asp:Label id="Label1" runat="server" />
    </div>
    </form>
</body>
</html>

Remarks

Use this method to copy the contents of the TableRowCollection into the specified System.Array, starting at the specified index.

Note

The array parameter must be a zero-based System.Array.

Applies to

See also