Type.IsVisible Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá hodnotu určující, zda Type lze přistupovat kódem mimo sestavení.
public:
property bool IsVisible { bool get(); };
public bool IsVisible { get; }
member this.IsVisible : bool
Public ReadOnly Property IsVisible As Boolean
Hodnota vlastnosti
true
pokud je aktuální veřejný typ nebo veřejný vnořený typ tak, aby všechny nadřazené typy jsou Type veřejné, jinak false
.
Příklady
Následující příklad kódu testuje dvě třídy, z nichž je viditelná pouze jedna mimo sestavení.
using namespace System;
private ref class InternalOnly
{
public:
ref class Nested {};
};
public ref class Example
{
public:
ref class Nested {};
};
// Entry point of example
int main()
{
Type^ classType = InternalOnly::Nested::typeid;
Console::WriteLine(
"Is the {0} class visible outside the assembly? {1}",
classType->FullName, classType->IsVisible);
classType = Example::Nested::typeid;
Console::WriteLine(
"Is the {0} class visible outside the assembly? {1}",
classType->FullName, classType->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
*/
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
*/
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
Poznámky
Tato vlastnost slouží k určení, zda je typ součástí veřejného rozhraní sestavení součásti.