Type.IsVisible Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft einen Wert ab, der angibt, ob der Type Zugriff über Code außerhalb der Assembly möglich ist.
public:
property bool IsVisible { bool get(); };
public bool IsVisible { get; }
member this.IsVisible : bool
Public ReadOnly Property IsVisible As Boolean
Eigenschaftswert
true wenn der aktuelle Type ein öffentlicher Typ oder ein öffentlicher geschachtelter Typ ist, sodass alle eingeschlossenen Typen öffentlich sind; andernfalls false.
Beispiele
Im folgenden Codebeispiel werden zwei Klassen getestet, von denen nur eine außerhalb der Assembly sichtbar ist.
using System;
internal class InternalOnly
{
public class Nested {}
}
public class Example
{
public class Nested {}
public static void Main()
{
Type t = typeof(InternalOnly.Nested);
Console.WriteLine(
"Is the {0} class visible outside the assembly? {1}",
t.FullName,
t.IsVisible
);
t = typeof(Example.Nested);
Console.WriteLine(
"Is the {0} class visible outside the assembly? {1}",
t.FullName,
t.IsVisible
);
}
}
/* This example produces the following output:
Is the InternalOnly+Nested class visible outside the assembly? False
Is the Example+Nested class visible outside the assembly? True
*/
module internal InternalOnly =
type Nested() = class end
module Example =
type Nested() = class end
let t = typeof<InternalOnly.Nested>
printfn $"Is the {t.FullName} class visible outside the assembly? {t.IsVisible}"
let t2 = typeof<Example.Nested>
printfn $"Is the {t2.FullName} class visible outside the assembly? {t2.IsVisible}"
(* This example produces the following output:
Is the InternalOnly+Nested class visible outside the assembly? False
Is the Example+Nested class visible outside the assembly? True
*)
Friend Class InternalOnly
Public Class Nested
End Class
End Class
Public Class Example
Public Class Nested
End Class
Public Shared Sub Main()
With GetType(InternalOnly.Nested)
Console.WriteLine("Is the " & .FullName _
& " class visible outside the assembly? " & .IsVisible)
End With
With GetType(Example.Nested)
Console.WriteLine("Is the " & .FullName _
& " class visible outside the assembly? " & .IsVisible)
End With
End Sub
End Class
' This example produces the following output:
'
'Is the InternalOnly+Nested class visible outside the assembly? False
'Is the Example+Nested class visible outside the assembly? True
Hinweise
Verwenden Sie diese Eigenschaft, um zu bestimmen, ob ein Typ Teil der öffentlichen Schnittstelle einer Komponentenassembly ist.