Hi,

> ok, das ist mir klar.
> Ich verstehe nur nicht in meinem Beispiel
> 
> GetType(IWindowsFormsEditorService)
> 
> von welchem Typ-Objekt hier die Rede ist, wenn IWindowsFormsEditorService
> ja eine Schnittstelle ist und eine Schnittstelle bekannterweise ja nur die
> Definitionsk�pfe von Eigenschaften, Methoden usw. enth�lt, aber keine
> ausf�hrbaren Befehle sprich "Funktionalit�t".

Mittels System.Type kann auch feststellen, welche Methoden,
Eigenschaften,... in einer Schnittstelle definiert sind. Auch ist diese
Schnittstelle in einer Assembly zu finden(zu der man hier�ber Informationen
einfangen kann). Letztendlich k�nnen auch Schnittstellen mit Attributen
�berh�uft werden und Auflistungen exportieren usw...

Dein Interface ist ein Typ, von dem Du mittels GetType das
System.Type-Objekt anforderst.
Ausf�hrbare Befehle sind dabei vollkommen egal.
Bei der Dim-Anweisung ist es Dir ja auch erstmal egal, ob der Typ dahinter
die Funktionalit�t bereitstellt oder nicht. Hauptsache eine sp�tere Instanz
eines Objekts kann, was Du willst.

<schnipp>
Dim y As New ImplementiertIrgendwas
Dim x As IIrgendwas
x = DirectCast(y, IIrgendwas)
x.IrgendwasFunktion

' y ist hierbei vom Typ ImplementiertIrgendwas
' x ist vom Typ IIrgendwas.
' CObj(y) ist vom Typ Object
' ...

y.GetType() Is GetType(ImplementiertIrgendwas) = True 
y.GetType() Is GetType(IIrgendwas) = False
CObj(y).GetType() Is GetType(IIrgendwas) = False
</schnipp>



Anders verh�lt es sich mit TypeOf. Hier wird gepr�ft, ob eine Objektinstanz
eine Schnittstelle implementiert oder von einer bestimmten Klasse abgeleitet
ist. Folgendes ist daher wieder (alles) True.

<schnipp>
TypeOf y Is IIrgendwas = True
TypeOf x Is ImplementiertIrgendwas = True
TypeOf CObj(y) Is IIrgendwas = True
</schnipp>



So oder so �hnlich, Wolfgang ;)
http://www.vbwelt.de/



_______________________________________________
Vb.net Mailingliste, Postings senden an:
[EMAIL PROTECTED]
An-/Abmeldung und Suchfunktion unter:
http://www.glengamoi.com/mailman/listinfo/vb.net

Odpovedet emailem