2016-12-28 2 views
0

Ich habe zwei Kombinationsfelder, eines mit einem Startdatum und das andere ist Enddatum. Ich möchte if(combobox1 > combobox2) überprüfen, ob das Startdatum größer ist als das Enddatum MessageBox.Show ("Sie haben ein großes Startdatum für das Finale gewählt");Vergleichen der Werte von 2 Kombinationsfelder

Wie kann das gemacht werden?

Antwort

0

einfach:

DateTime d1 = Convert.ToDateTime(ComboBox1.SelectedValue.toString()); 
DateTime d2 = Convert.ToDateTime(ComboBox2.SelectedValue.toString()); 
if(d1 > d2) 
{ 
    MessageBox.Show("Some message"); 
} 
+0

CS1061 C# 'Objekt' enthält keine Definition für 'toString' und keine Erweiterungsmethode 'toString' könnte ein erstes Argument vom Typ 'object' gefunden werden (fehlt eine using-Direktive oder eine Assembly-Referenz?) –

+0

Kannst du mir helfen? –

+0

Hinzufügen von 'using System.String' über Ihrer Klassendatei @ B.Pizhev – ViVi

0

Dies könnte beheben das Problem

var StartDate = comboBoxDate1.Text; 
var EndDate = comboBoxDate2.Text; 
var eDate = Convert.ToDateTime(EndDate); 
var sDate = Convert.ToDateTime(StartDate); 
if(StartDate != "" && StartDate != "" && sDate > eDate) 
{ 
    Console.WriteLine("Please ensure that the End Date is greater than the Start Date."); 
} 
+0

Operator> kann nicht auf Operanden vom Typ 'Date' und 'Date' angewendet werden? –

0

Es hängt davon ab, was Sie unter Ihren ComboBoxen haben.

Wenn Sie nur Texte haben:

var dateFrom = Convert.ToDateTime(ComboBox1.Text); 
var dateTo = Convert.ToDateTime(ComboBox2.Text); 


if(dateFrom > dateTo) 
{ 
    // your code 
} 

Wenn Sie Objekte gebunden haben, wo ValueMember Typ ist DateTime

var dateFrom = (DateTime)ComboBox1.SelectedValue; 
var dateTo = (DateTime)ComboBox2.SelectedValue; 


if(dateFrom > dateTo) 
{ 
    // your code 
} 
0
DateTime date1 = Convert.ToDateTime(comboBox1.Text); 
DateTime date2 = Convert.ToDateTime(comboBox2.Text); 
if(date1>date2) 
{ 
MessageBox.Show("You have chosen a great starting date of the final"); 
} 
Verwandte Themen