BindAsAttribute Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
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é. |