Zum Inhalt springen

Alle Zeilen einer Tabelle (erhöhte Schwierigkeit)


Empfohlene Beiträge

Geschrieben

Moin moin,

Ich habe eine foreach-Schleife mit der ich alle Zeilen einer Tabelle durchlaufe.

foreach(DataRow _row in Table.Rows)

Nun ist es aber so, das ich innerhalb der Schleife neue Zeilen zur Tabelle hinzufüge.

Leider bleibt der Wert in der foreach-Bedingung immer gleich, also Table.Rows.Count

ergibt immer 15.

Ich hoffe es ist einigermaßen verständlich.

Hat jemand vielleicht eine Idee?

Geschrieben

Hi,

1. Zumindest ein Hinweis auf die Programmiersprache wäre praktisch

2. Du würdest ja dann eine Endlosschleife erzeugen, wenn bei jedem Durchlauf eine Zeile hinzugefügt wird.

3. Daraus lässt sich schließen, dass Foreach vorher nachschaut, wieviel Einträge vorhanden sind und dann erst die Schleife beginnt

Geschrieben

1. Anzahl Zeilen ermitteln in einer Variablen speichern

2. For-Schleife von 1ter Zeile bis eben gespeicherter Zeile

Funktioniert natürlich nur, wenn die Zeilen am Ende eingefügt werden. Ansonsten kommt es natürlich stark darauf an, wo die neue Zeile eingefügt wird.

Edit: ich habs nochmal gelesen, möchtest du denn nun auch die neuen Zeilen durchlaufen oder nur die, die vorher drin waren?

Geschrieben
1. Anzahl Zeilen ermitteln in einer Variablen speichern

2. For-Schleife von 1ter Zeile bis eben gespeicherter Zeile

Funktioniert natürlich nur, wenn die Zeilen am Ende eingefügt werden. Ansonsten kommt es natürlich stark darauf an, wo die neue Zeile eingefügt wird.

Edit: ich habs nochmal gelesen, möchtest du denn nun auch die neuen Zeilen durchlaufen oder nur die, die vorher drin waren?

Die Zeilen werden mittendrin eingefügt.

foreach(DataRow _row in Table.Rows)

{

     if(...)

    {

        Rows.AddAt(_row.RowIndex,  _newrow); //_newrow ist die Zeile die ich einfüge

    }

}

Konkret ist nun das Problem das _row.RowIndex den alten Index liefert, wenn ich aber bereits n Zeilen

hinzugefügt habe (die über der aktuellen Zeile liegen) landet meine neue Zeile an der falschen Stelle.

So, durch das aufschreiben ist es mir nun selber eingefallen: ich zähl einfach mit wie viele Zeilen ich einfüge und rechne den Index entsprechend hoch. :upps

Danke für die Hilfe

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...