AndyB hat folgendes geschrieben: |
Der Unterschied zwischen Delphi.NET und C# liegt hierbei einfach darin, dassn in C# ein Typ vor dem "auto-this" kommt. Wenn man also in C# auf die Forms Eigenschaft DialogResult zugreifen möchte, dann muss man this.DialogResult schreiben.
Bei beiden Varianten ist der Vorteil aber auch der Nachteil. Das hängt halt immer vom jeweiligen Kontext ab. (die C#-Variante ist aber dahingehend besser dass "this." einfach kürzer zu schreiben ist als "System.Windows.Forms." |
Öhm wer hat dir denn das erzählt? Ich lasse mir das "this." sogar autom. von einem AddIn entfernen wenn es unnötig ist[meta]stört irendwie beim lesen...[/meta].
Das hier funktioniert absolut problemlos in C#
C#-Quelltext
1: 2: 3: 4: 5: 6:
| private void okButton_Click(object sender, EventArgs e) { String String = "Hallo"; Text = String; DialogResult = DialogResult.OK; } |
oder in Chrome:
Delphi-Quelltext
1: 2: 3: 4: 5: 6:
| method MainForm.okButton_Click(sender: Object; e: EventArgs); begin var String := 'Hallo'; Text := String; DialogResult := DialogResult.OK; end; |
Sollte eigentlich auch klar sein. Wenn ich, als fehlbarer Mensch, sofort erkennen kann kann, dass hier eine Property mit der Konstante DialogResult.OK besetzt wird, sollte es der Compiler schon 10-mal wissen.
Die Art der Verwendung schließt doch schon aus, dass es ein Typ ist, somit muss der Compiler nur noch schauen, ob es eine passende Variable/Property/Feld gibt.
btw: @Christion, es geht auch
&DialogResult.OK Nicht schön, aber kürzer...