Vor allem Sie sollte nach Nullen suchen (weil Sie versuchen, auf die Instanzfelder/Eigenschaften des Objekts zuzugreifen):
if(selectedlabel != null)
// or
if(!ReferenceEquals(selectedlabel, null))
Dann, was Sie tun Überprüfung wird nur, wenn der String null oder leer ist (auf der C# hat Buil-in-Verfahren): string.IsNullOrEmpty(selectedlabel.Text)
Jetzt müssen Sie nur noch diese verwenden &&
Operator verbinden, die, wenn beide überprüft sind wahr, scheitern aber, wenn die erste Prüfung false
ist. Zu wissen, dass sie zurückfallen, wenn die erste Bedingung nicht erfüllt Sie diese in kombinieren:
if (!ReferenceEquals(selectedlabel, null) && !string.IsNullOrEmpty(selectedlabel.Text))
{
// your code here
}
Aber ein anderes Problem ist basketID = int.Parse(selectedlabel.Text);
. Wie ich oft sage lassen Sie einige Marge für Fehler, was bedeutet, nicht davon ausgehen, dass der Benutzer ist klug (besser Weg! Immer davon ausgehen, dass der Benutzer dumm wie die Hölle ist), anstatt eine Zahl zu setzen, wird der Benutzer etwas eingeben wie "Bitte geben Sie 123 hier "und es wird Ihre Bewerbung töten.
int.TryParse(selectedlabel.Text, out basketID);
Okay, so so etwas wie ALLE der obigen Ausführungen sollte das Ergebnis der Kombination:
if (!ReferenceEquals(selectedlabel, null) && !string.IsNullOrEmpty(selectedlabel.Text))
{
if(!int.TryParse(selectedlabel.Text, out basketID))
{
// user entered text that is unconvertible to int
}
}
Haben Sie innen 'if' eingegeben? –