Man kann es auch so schreiben (und ist auch besser, mehr dazu gleich):
C#-Quelltext
1:
| ((List<string>)this.Properties["AppEventList"]).Add("Activated"); |
Beides führt einen Cast auf List<string> durch. As jedoch gibt null zurück, falls der Cast nicht erfolgreich war, der direkte Cast wirft eine Exception InvalidTypecast oder so.
Deshalb ist es hier umgekehrt wie in Delphi. In C# sollte man besser direkt casten oder nach as auf null prüfen.
Aber niemals direkt ein Objekt nach as benutzen wie oben passiert.
In Delphi passiert bei as genau das Umgekehrte. Da wird bei as die InvalidTypecast Exception geworfen, beim direkten Cast nicht. Dort muss man also beim direkten Cast aufpassen.
