Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
Vergleich mehrere DGV Einträge
Bratwurstexe
myCSharp.de - Member

Avatar #DjnCTOgpyUQc0tznMTdl.png


Dabei seit:
Beiträge: 16

Themenstarter:

Vergleich mehrere DGV Einträge

beantworten | zitieren | melden

Hallo zusammen,

ich habe eine Funktion geschrieben, welche mehrere Einträge in meinem DataGridView vergleicht und dementsprechend in einem anderen Feld das Ergebnis ausgibt.

Die Funktion vergleicht Das heutige Datum/Zeit mit dem Versanddatum/Versandzeit.

Nur aus mir nicht ersichtlichen gründen, zeigt er die letzte Zeile nicht an und sie bleibt Frei obwohl bei dieser Zeile die selbe Funktion greifen müsste.

Könnt ihr mir hier einmal auf die Sprünge helfen?



 public void Versandzeit()
        {
            DateTime _Versandzeit;
            DateTime _Systemzeit;
            DateTime _Versanddatum;
            DateTime _Heute;
      
            for (int i = 0; i < dataGridView1.RowCount - 1; i++)
            {
              
                _Heute = Convert.ToDateTime(dataGridView1.Rows[i].Cells[6].Value); 
                _Systemzeit = Convert.ToDateTime(dataGridView1.Rows[i].Cells[5].Value);
                _Versanddatum = Convert.ToDateTime(dataGridView1.Rows[i].Cells[2].Value); 
                _Versandzeit = Convert.ToDateTime(dataGridView1.Rows[i].Cells[3].Value);

                if (_Heute == _Versanddatum && _Versandzeit > _Systemzeit) 
                {
                    dataGridView1.Rows[i].Cells[4].Value = "Versandzeit OK";
                }
                else if (_Versandzeit == _Systemzeit && _Versanddatum == _Heute) 
                {
                    dataGridView1.Rows[i].Cells[4].Value = "Versandzeit abgelaufen!";
                }
                else if (_Systemzeit > _Versandzeit && _Versanddatum < _Heute)
                {
                    dataGridView1.Rows[i].Cells[4].Value = "Versandzeit prüfen!";
                }
                else if (_Heute < _Versanddatum || _Heute.AddDays(1) == _Versanddatum)
                {
                    dataGridView1.Rows[i].Cells[4].Value = "Versandzeit OK";
                }

            }
        }



Attachments
private Nachricht | Beiträge des Benutzers
dannoe
myCSharp.de - Member



Dabei seit:
Beiträge: 217

beantworten | zitieren | melden

Deine Schleife wird für die letzte Zeile nicht ausgeführt. Du hast als Bedingung i < dataGridView1.RowCount - 1 angegeben.
private Nachricht | Beiträge des Benutzers
Bratwurstexe
myCSharp.de - Member

Avatar #DjnCTOgpyUQc0tznMTdl.png


Dabei seit:
Beiträge: 16

Themenstarter:

beantworten | zitieren | melden

Hallo dannnoe,

Ohje.... das muss ich übersehen haben.
Hast mir sehr geholfen! Vielen Dank. Das passiert mir nicht nochmal.
private Nachricht | Beiträge des Benutzers
FZelle
myCSharp.de - Experte



Dabei seit:
Beiträge: 9.975

beantworten | zitieren | melden

Und wenn du die Daten nicht ins DGV gefriemelt , sondern eine Liste mit Objekten gebunden hättest, müsstest Du diese Klimmzüge gar nicht machen
private Nachricht | Beiträge des Benutzers