.NET Surprises

Montag, 10. Oktober 2005

...

Eine der vielen kleinen Nettigkeiten in .NET ist das man EventHandler nicht über eine Methode à la addEventHandler oder addListener zuweist, sondern die Operatoren += und -= benutzt also etwa:

this.Enter += new EventHandler(MyForm_Enter);

void MyForm_Enter()
{
//do something
}

Sobald man das += eingegeben hat kann man sich den restlichen Code automatisch erzeugen lassen. Sehr schön. Überladene Operatoren fand ich ja schon in C++ ganz toll (wobei's da auch nicht unberechtigte Kritiken gibt..).

Anyhow, frag ich mich jedemal welche fantstischen Operationen dann wohl die Operatoren *= und /= bewirken könnten (oder vielleicht auch %= ).
Schätze da kommt dann der Geek durch.

Dienstag, 6. September 2005

Keine abstrakten Forms möglich

Warum nicht eine neue Kategorie in der ich mich über Dinge wunder, die mir bei .NET auffallen.

Z.B. dass ich keine abstrakten Forms anlegen kann.
Abstrakte Forms? Wer braucht das denn? Ich, wenn ich Funktionalität in mehreren Forms brauche, ne Basisklasse dafür erstelle und diese selbst nie verwenden will.

Wenn ich aber eine Form als abstrakt deklariere und eine andere Form von ihr ableite, kann VS2005 die abgeleite Form nicht im Designmodus darstellen!!!
Hintergund ist vermutlich, dass die Darstellung im Designeditor selbst eine Instanz der Klasse ist. Das ist bspw. bei FlashMX-Komponenten genauso.
Irgendwie will VS2005 aber nicht nur eine Instanz der Form selbst, sondern auch der übergeordneten, in meinem Fall abstrakten, Basisklasse erstellen. Und das geht dann eben nicht.
Und dich kriege folgende Meldung:
The designer must create an instance of type 'BaseForm' but it cannot because the type is declared as abstract.

?!?

Was auch immer der Grund sein mag, der Editor zwingt mich die Klasse als nicht abstrakt zu deklarieren, was mir letztlich ziemlich egal sein könnte, aber eben keine schöne Architektur ist.

.NET Surprises
biz
books
gadgets
games
lyrics
quotations
random
technology
webfunde
Profil
Abmelden
Weblog abonnieren