BindAsAttribute Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Atrybut BindAsAttribute umożliwia tworzenie powiązań natywnych typów NSNumber, NSValue i NSString (w przypadku wyliczenia) w bardziej dokładne typy zarządzane.
[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
- Dziedziczenie
-
BindAsAttribute
- Atrybuty
Uwagi
Ten atrybut jest zwykle używany w projektach powiązań, aby wskazać specjalne mapowanie między Objective-C a typami zarządzanymi:
// 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; }
W tym przykładzie rect parametr zostanie powiązany jako zarządzany CGRect, a wartość zwracana zostanie powiązana jako bool?.
W definicjach powiązań protokołu i modelu ten atrybut jest obsługiwany w parametrach, ale nie we właściwościach lub zwracanych wartościach.
| Obsługiwane kombinacje: |
|---|
| Między NSNumber i bool, byte, sbyte, short, ushort, int, uint, long, ulong, nint, nuint, float, double, nfloat, any of the previous as a nullable type, or as an array |
| Między NSValue i NSRange, CGAffineTransform, CGPoint, CGRect, CGSize, CGVector, NSDirectionalEdgeInsets, CATransform3d, CLLocationCoordinate2d, CMTime, CMTimeMapping, CMTimeRange, MKCoordinateSpan, SCNMatrix4, SCNVector3, SCNVector4, UIEdgeInsets, UIOffset, dowolny z poprzednich jako typ dopuszczający wartość null lub jako tablica. |
| Między wyliczeniami opartymi na ciągach NSString i odpowiadającymi im zarządzanymi wyliczeniami. |
Konstruktory
| Nazwisko | Opis |
|---|---|
| BindAsAttribute(Type) |
Inicjuje nowy atrybut BindAs z określonym typem zarządzanym. |
Pola
| Nazwisko | Opis |
|---|---|
| OriginalType |
Typ Objective-C. |
| Type |
Typ zarządzany. |