TableRowCollection.GetEnumerator TableRowCollection.GetEnumerator TableRowCollection.GetEnumerator TableRowCollection.GetEnumerator Method

Definition

Gibt ein implementiertes IEnumerator-Objekt zurück, das alle TableRow-Objekte in der TableRowCollection enthält.Returns a IEnumerator implemented object that contains all TableRow objects within the TableRowCollection.

public:
 virtual System::Collections::IEnumerator ^ GetEnumerator();
public System.Collections.IEnumerator GetEnumerator ();
abstract member GetEnumerator : unit -> System.Collections.IEnumerator
override this.GetEnumerator : unit -> System.Collections.IEnumerator
Public Function GetEnumerator () As IEnumerator

Gibt zurück

Ein IEnumerator-implementiertes Objekt, das alle TableRow-Objekte in TableRowCollection enthält.A IEnumerator implemented object that contains all TableRow objects within the TableRowCollection.

Implementiert

Beispiele

Im folgenden Beispiel wird veranschaulicht, wie die GetEnumerator -Methode zum Erstellen System.Collections.IEnumerator eines implementierten Objekts verwendet wird, das durchlaufen wird, um die Elemente in der Tabelle anzuzeigen.The following example demonstrates how to use the GetEnumerator method to create a System.Collections.IEnumerator implemented object that is iterated through to display the items in the table.

<%@ 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();
            for (int 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;
        TableCell currentCell;
        StringBuilder tb = new StringBuilder();

        // Create an IEnumerator for the rows of a table.
        IEnumerator myRowEnum = Table1.Rows.GetEnumerator();

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

        // Iterate through the IEnumerator and display its contents.
        while (myRowEnum.MoveNext())
        {
            // Create an IEnumerator for the cells of the row.
            IEnumerator myCellEnum = Table1.Rows[rowCounter].Cells.GetEnumerator();

            // Iterate through the IEnumerator and display its contents.
            while (myCellEnum.MoveNext())
            {
                currentCell = (TableCell)myCellEnum.Current;
                tb.Append(currentCell.Text + ", ");
            }
            rowCounter++;
        }
        Label1.Text = tb.ToString();
    }
</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 />&nbsp;<br />
        <asp:Button id="Button1"
            Text="Copy Table to Array"
            OnClick="Button_Click"
            runat="server"/>
        <br />&nbsp;<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 cellNum
            Table1.Rows.Add(rw)
        Next rowNum
    End Sub

    Sub Button_Click(ByVal sender As Object, ByVal e As EventArgs)
        
        Dim rowCounter As Integer = 0
        Dim currentCell As TableCell
        Dim tb As New StringBuilder
        
        ' Create an IEnumerator for the rows of the table.
        Dim myRowEnum As IEnumerator = Table1.Rows.GetEnumerator()
        
        tb.Append("The copied items from the table are: <br />")
        
        ' Iterate through the IEnumerator and display its contents.
        While myRowEnum.MoveNext()
            
            ' Create an IEnumerator for the cells of a row.
            Dim myCellEnum As IEnumerator = _
                Table1.Rows(rowCounter).Cells.GetEnumerator()
            
            ' Iterate through the IEnumerator and display its contents.
            While myCellEnum.MoveNext()
                currentCell = CType(myCellEnum.Current, TableCell)
                tb.Append(currentCell.Text & ", ")
            End While
            Label1.Text = tb.ToString()
            
            rowCounter += 1
        End While
    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 />&nbsp;<br />
        <asp:Button id="Button1"
            Text="Copy Table to Array"
            OnClick="Button_Click"
            runat="server"/>
        <br />&nbsp;<br />
        <asp:Label id="Label1" runat="server" />
    </div>
    </form>
</body>
</html>

Hinweise

Verwenden Sie diese Methode, um System.Collections.IEnumerator ein implementiertes Objekt zu erstellen, das problemlos durchlaufen werden kann, um TableRowCollectionjedes Element in der zu erhalten.Use this method to create a System.Collections.IEnumerator implemented object that can be iterated through easily to get each item in the TableRowCollection.

Verwenden Sie IEnumerator.Current die-Eigenschaft, um das Element zu erhalten, auf das aktuell in der Auflistung verwiesen wirdUse the IEnumerator.Current property to get the item currently pointed to in the collection.

Verwenden Sie IEnumerator.MoveNext die-Methode, um zum nächsten Element in der Auflistung zu wechseln.Use the IEnumerator.MoveNext method to move to the next item in the collection.

Verwenden Sie IEnumerator.Reset die-Methode, um den Enumerator zurück an die ursprüngliche Position zu verschieben.Use the IEnumerator.Reset method to move the enumerator back to the initial position.

Hinweis

Die IEnumerator.MoveNext -Methode muss nach dem Erstellen eines System.Collections.IEnumerator implementierten Objekts oder mithilfe IEnumerator.Reset der-Methode aufgerufen werden, um den Enumerator auf das erste Element in der Auflistung zu verschieben.The IEnumerator.MoveNext method must be called after creating a System.Collections.IEnumerator implemented object or using the IEnumerator.Reset method to move the enumerator to the first item in the collection. Andernfalls ist das durch die IEnumerator.Current -Eigenschaft dargestellte Element nicht definiert.Otherwise, the item represented by the IEnumerator.Current property is undefined.

Gilt für:

Siehe auch