2009-03-06 4 views

Antwort

54

nehmen einfach das Datum Teil jeder über die Date Eigenschaft und vergleichen die beiden:

date1.Date.CompareTo(date2.Date) 

Oder:

If date1.Date < date2.Date Then 
+0

nehmen Sie richtig. –

+0

Ich werde den Text dann entfernen. Für jeden, der mitging, machte Konrads Kommentar zu der Zeit Sinn :) –

+0

+1, fügte ein kleines bisschen zur VB if/then Syntax hinzu. – JaredPar

7

Vergleichen Sie die DateTime.Date-Eigenschaften.

7

Sie auch Timespan

Dim ts As TimeSpan 
ts = dt1 - dt2 

ts nutzen könnten. Tage haben jetzt den Unterschied der beiden Daten als ganze Tage.

+1

Ich wollte nur hinzufügen, dass ich oft (dt1-dt2) .Days als Quick Diff benutze. –

+0

Genau das, was ich gesucht habe! Vielen Dank! – webprogrammer

5

Ändern Sie das Datum txt1 in das Format TT/MM/JJJJ unter Verwendung von myDateTime.ToShortDateString(), so dass beide Datumsangaben das gleiche Format haben. dann:

if (DateTime.Compare(date1, date2) > 0) 
// which means ("date1 > date2") 
if (DateTime.Compare(date1, date2) == 0) 
//which means ("date1 == date2"); 
if (DateTime.Compare(date1, date2) < 0) 
//which means ("date1 < date2"); 
+0

große Logik für den Umgang mit Datumsvergleichen, danke. – htm11h

-3
Dim date1, date2 As Date 
date1 = Date.Parse(dtpStart.Text) 
date2 = Date.Parse(dtpEnd.Text) 
If (DateTime.Compare(date1, date2) > 0) Then ' which means ("date1 > date2") 
    MessageBox.Show("يجب تحديد الفترة للتاريخ بشكل صحيح ", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1, MessageBoxOptions.RtlReading) 
    Exit Sub 
End If 
Verwandte Themen