Cet article a fait l'objet d'une traduction manuelle. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. |
Traduction
Source
|
Type.IsLayoutSequential, propriété
Obtient une valeur indiquant si l'attribut de présentation de classe SequentialLayout est sélectionné pour le Type.
Assembly : mscorlib (dans mscorlib.dll)
Valeur de propriété
Type : System.Booleantrue si l'attribut de présentation de classe SequentialLayout est sélectionné pour Type ; sinon, false.
Implémentations
_Type.IsLayoutSequentialLayoutMask est utilisé pour sélectionner les attributs de présentation de classe. Les attributs de présentation de classe (AutoLayout, SequentialLayout et ExplicitLayout) définissent le mode de disposition des champs de l'instance de classe dans la mémoire.
Pour plus d'informations, consultez la section 9.1.2 de la documentation relative à l'infrastructure du langage commun (CLI), plus précisément « Partition II: Metadata Definition and Semantics ». La documentation est disponible en ligne. Consultez ECMA C# and Common Language Infrastructure Standards (en anglais) sur MSDN et Standard ECMA-335 - Common Language Infrastructure (CLI) (en anglais) sur le site Web international ECMA.
Si le Type actuel représente un type générique construit, cette propriété s'applique à la définition de type générique à partir de laquelle le type a été construit. Par exemple, si le Type actuel représente MyGenericType<int> (MyGenericType(Of Integer) en Visual Basic), la valeur de cette propriété est déterminée par MyGenericType<T>.
Si le Type actuel représente un paramètre de type dans la définition d'un type ou d'une méthode générique, cette propriété retourne toujours la valeur false.
L'exemple suivant crée une instance d'une classe pour laquelle le membre Sequential de l'énumération LayoutKind dans la classe StructLayoutAttribute a été défini, vérifie la propriété IsLayoutSequential puis affiche le résultat.
using System; using System.Reflection; using System.ComponentModel; using System.Runtime.InteropServices; class MyTypeSequential1 { } [StructLayoutAttribute(LayoutKind.Sequential)] class MyTypeSequential2 { public static void Main(string []args) { try { // Create an instance of myTypeSeq1. MyTypeSequential1 myObj1 = new MyTypeSequential1(); Type myTypeObj1 = myObj1.GetType(); // Check for and display the SequentialLayout attribute. Console.WriteLine("\nThe object myObj1 has IsLayoutSequential: {0}.", myObj1.GetType().IsLayoutSequential); // Create an instance of 'myTypeSeq2' class. MyTypeSequential2 myObj2 = new MyTypeSequential2(); Type myTypeObj2 = myObj2.GetType(); // Check for and display the SequentialLayout attribute. Console.WriteLine("\nThe object myObj2 has IsLayoutSequential: {0}.", myObj2.GetType().IsLayoutSequential); } catch(Exception e) { Console.WriteLine("\nAn exception occurred: {0}", e.Message); } } }
Windows 7, Windows Vista SP1 ou ultérieur, Windows XP SP3, Windows XP SP2 Édition x64, Windows Server 2008 (installation minimale non prise en charge), Windows Server 2008 R2 (installation minimale prise en charge avec SP1 ou version ultérieure), Windows Server 2003 SP2
Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.