Autor Beitrag
Hendi48
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 271



BeitragVerfasst: So 17.02.08 19:31 
Hallo,
ich lerne gerade C# und habe ein Problem: Ich habe einen Button mit Code drin, und habe da folgende Abfrage drin:
ausblenden C#-Quelltext
1:
2:
3:
4:
            if (textBox1.Text.Length == 0)
            {
                MessageBox.Show("Kein Link!");
            }

Wie kann ich jetzt nach der MessageBox rausgehen? (Exit; in Delphi)
Am besten wäre es natürlich wenn eine richtige Exception kommt statt nur einer billigen MessageBox.


Moderiert von user profile iconChristian S.: Topic aus Allgemeine .NET-Fragen verschoben am So 17.02.2008 um 19:35


Zuletzt bearbeitet von Hendi48 am So 17.02.08 19:36, insgesamt 1-mal bearbeitet
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: So 17.02.08 19:44 
Dem exit in Delphi entspricht das return in C#, welches man auch ohne das mitgeben eines Rückgabewertes verwenden kann.

Ich empfehle das Suche bei Google "OPENBOOK VISUAL C#" für Grundlagen.

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
JüTho
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2021
Erhaltene Danke: 6

Win XP Prof
C# 2.0 (#D für NET 2.0, dazu Firebird); früher Delphi 5 und Delphi 2005 Pro
BeitragVerfasst: So 17.02.08 19:45 
user profile iconHendi48 hat folgendes geschrieben:
Ich habe einen Button mit Code drin,

Was für Code denn? Genauer: Ich vermute, dass Du durch ein Ereignis etwas ausführen lassen willst. Dafür ist es sowieso immer besser, die eigentliche Arbeit nicht im EventHandler stehen zu lassen, sondern durch eine eigenständige Methode erledigen zu lassen:
ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
void MyEventHandler(object sender, EventArgs e) {
    if (...)
        MessageBox.Show(...);
    else
        DoWork();
}

user profile iconHendi48 hat folgendes geschrieben:
und habe da folgende Abfrage drin:
ausblenden C#-Quelltext
1:
    if (textBox1.Text.Length == 0)					

Empfehlung: verwende das als Abfrage:
ausblenden C#-Quelltext
1:
    if (String.IsNullOrEmpty(textBox1.Text))					

user profile iconHendi48 hat folgendes geschrieben:
Wie kann ich jetzt nach der MessageBox rausgehen? (Exit; in Delphi)

Empfohlenes Vorgehen siehe oben. Ansonsten kann jede Methode an jeder Stelle auch mit return verlassen werden.

user profile iconHendi48 hat folgendes geschrieben:
Am besten wäre es natürlich wenn eine richtige Exception kommt statt nur einer billigen MessageBox.

Das ist nicht immer sinnvoll: Eine Exception ist wirklich eine Ausnahme. Wenn Du das Verhalten des Programms selbst steuern kannst, dann tu das auch. Wenn Du gezielt eine Exception haben willst, dann geht das so (möglichst mit einer passenden abgeleiteten Klasse):
ausblenden C#-Quelltext
1:
    throw new Exception("Kein Link!");					

Gruß Jürgen
Hendi48 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 271



BeitragVerfasst: So 17.02.08 19:52 
OK, vielen Dank für die Hilfe!