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";
}
}
}