Leggi in inglese

Condividi tramite


Type.IsAutoLayout Proprietà

Definizione

Ottiene un valore che indica se i campi del tipo corrente sono disposti automaticamente dal Common Language Runtime.

C#
public bool IsAutoLayout { get; }

Valore della proprietà

true se la proprietà Attributes del tipo corrente include AutoLayout; in caso contrario, false.

Implementazioni

Esempio

Nell'esempio seguente viene creata un'istanza del tipo e viene visualizzata la IsAutoLayout proprietà .

C#
using System;
using System.Runtime.InteropServices;

// The Demo class is attributed as AutoLayout.
[StructLayoutAttribute(LayoutKind.Auto)]
public class Demo
{
}

public class Example
{
    public static void Main()
    {
        // Create an instance of the Type class using the GetType method.
        Type  myType=typeof(Demo);
        // Get and display the IsAutoLayout property of the
        // Demoinstance.
        Console.WriteLine("\nThe AutoLayout property for the Demo class is {0}.",
            myType.IsAutoLayout);
    }
}

Commenti

Questa proprietà viene fornita come praticità. In alternativa, è possibile usare il valore di enumerazione per selezionare gli attributi del TypeAttributes.LayoutMask layout del tipo e quindi verificare se TypeAttributes.AutoLayout è impostato. I TypeAttributes.AutoLayoutvalori diTypeAttributes.ExplicitLayout enumerazione e TypeAttributes.SequentialLayout indicano il modo in cui i campi del tipo sono disposti in memoria.

Per i tipi dinamici, è possibile specificare TypeAttributes.AutoLayout quando si crea il tipo. Nel codice applicare l'attributo con il StructLayoutAttributeLayoutKind.Auto valore di enumerazione al tipo per consentire al runtime di determinare il modo appropriato per definire la classe.

Nota

Non è possibile usare il metodo per determinare se l'oggetto GetCustomAttributesStructLayoutAttribute è stato applicato a un tipo.

Se l'oggetto corrente Type rappresenta un tipo generico costruito, questa proprietà si applica alla definizione di tipo generico da cui è stato costruito il tipo. Ad esempio, se l'oggetto corrente Type rappresenta MyGenericType<int> (MyGenericType(Of Integer) in Visual Basic), il valore di questa proprietà viene determinato da MyGenericType<T>.

Se l'oggetto corrente Type rappresenta un parametro di tipo nella definizione di un tipo generico o di un metodo generico, questa proprietà restituisce falsesempre .

Si applica a

Prodotto Versioni
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

Vedi anche