Langue

BindAsAttribute Classe

Définition

BindAsAttribute permet de lier des types NSNumber, NSValue et NSString natifs (pour les énumérations) en types managés plus précis.

[System.AttributeUsage(System.AttributeTargets.Parameter | System.AttributeTargets.Property | System.AttributeTargets.ReturnValue, AllowMultiple=false)]
public class BindAsAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Parameter | System.AttributeTargets.Property | System.AttributeTargets.ReturnValue, AllowMultiple=false)>]
type BindAsAttribute = class
    inherit Attribute
Héritage
BindAsAttribute
Attributs

Remarques

Cet attribut est généralement utilisé dans les projets de liaison pour indiquer un mappage spécial entre Objective-C et les types managés :

// NSValue <-> CGRect (for the 'rect' parameter)
// NSNumber <-> bool? (for the return value)
[return: BindAs (typeof (bool?))]
[Export ("shouldDrawAt:")]
NSNumber ShouldDraw ([BindAs (typeof (CGRect))] NSValue rect);

// NSString <-> CAScroll
[BindAs (typeof (CAScroll []))]
[Export ("supportedScrollModes")]
NSString [] SupportedScrollModes { get; set; }

Dans cet exemple, le rect paramètre sera lié en tant que managé CGRectet la valeur de retour sera liée en tant que bool?.

Dans les définitions de liaison de protocole et de modèle, cet attribut est pris en charge sur les paramètres, mais pas sur les propriétés ou les valeurs de retour.

Combinaisons prises en charge :
Entre NSNumber et bool, octet, sbyte, short, ushort, int, uint, long, ulong, nint, nuint, float, double, nfloat, nfloat, nfloat, un type nullable ou comme tableau
Entre NSValue et NSRange, CGAffineTransform, CGPoint, CGRect, CGSize, CGVector, NSDirectionalEdgeInsets, CATransform3d, CLLocationCoordinate2d, CMTime, CMTimeMapping, CMTimeRange, MKCoordinateSpan, SCNMatrix4, SCNVector3, SCNVector4, UIEdgeInsets, UIOffset, tout autre type nullable ou comme tableau.
Entre les énumérations sauvegardées par NSString et l’énumération managée correspondante.

Constructeurs

Nom Description
BindAsAttribute(Type)

Initialise un nouvel attribut BindAs avec le type managé spécifié.

Champs

Nom Description
OriginalType

Type Objective-C.

Type

Type managé.

S’applique à