2013-02-17 5 views

Antwort

8

Es schlägt fehl, da verschachtelte Typen sind Public nicht berücksichtigt, werden sie NestedPublic stattdessen betrachtet.

Vom IsPublic() MSDN documentation:

Sie nicht mit verschachtelten Typen verwenden; Verwenden Sie stattdessen IsNestedPublic.

+0

Eine verwandte Eigenschaft ist 'IsVisible'. Sie gibt true zurück, wenn die Klasse (oder struct, interface, enum, delegate type) öffentlich ist und alle äußeren (containing) Typen ebenfalls public sind. Also ist es für nicht verschachtelte Klassen wie 'IsPublic' und für verschachtelte Typen ist es wie' IsNestedPublic' kombiniert mit 'IsNestedPublic' für alle äußeren Klassen und' IsPublic' für die äußerste Klasse. –

+0

Beachten Sie, dass eine "protected" -Klasse, die innerhalb einer "public" -Klasse sitzt, in gewisser Weise auch "sichtbar" ist, selbst wenn die von mir erwähnte 'IsVisible'-Eigenschaft false zurückgibt. Beispiel: ['TypeConverter + SimplePropertyDescriptor'] (http://msdn.microsoft.com/en-us/library/system.componentmodel.typeconverter.simplepropertydescriptor.aspx) –

Verwandte Themen