OnPlatformExtension Klass

Definition

Tillhandahåller ett XAML-tillägg som returnerar olika värden beroende på vilken plattform appen körs på.

public ref class OnPlatformExtension : Microsoft::Maui::Controls::Xaml::IMarkupExtension
[Microsoft.Maui.Controls.ContentProperty("Default")]
[Microsoft.Maui.Controls.Xaml.RequireService(new System.Type[] { typeof(Microsoft.Maui.Controls.Xaml.IProvideValueTarget), typeof(Microsoft.Maui.Controls.Xaml.IValueConverterProvider), typeof(Microsoft.Maui.Controls.Xaml.IXmlLineInfoProvider), typeof(Microsoft.Maui.Controls.Xaml.IConverterOptions) })]
public class OnPlatformExtension : Microsoft.Maui.Controls.Xaml.IMarkupExtension
[Microsoft.Maui.Controls.ContentProperty("Default")]
public class OnPlatformExtension : Microsoft.Maui.Controls.Xaml.IMarkupExtension
[<Microsoft.Maui.Controls.ContentProperty("Default")>]
[<Microsoft.Maui.Controls.Xaml.RequireService(new System.Type[] { typeof(Microsoft.Maui.Controls.Xaml.IProvideValueTarget), typeof(Microsoft.Maui.Controls.Xaml.IValueConverterProvider), typeof(Microsoft.Maui.Controls.Xaml.IXmlLineInfoProvider), typeof(Microsoft.Maui.Controls.Xaml.IConverterOptions) })>]
type OnPlatformExtension = class
    interface IMarkupExtension
[<Microsoft.Maui.Controls.ContentProperty("Default")>]
type OnPlatformExtension = class
    interface IMarkupExtension
Public Class OnPlatformExtension
Implements IMarkupExtension
Arv
OnPlatformExtension
Attribut
Implementeringar

Kommentarer

Värdet matchas genom att matcha identifieraren PlatformDevicePlatform (struct-värdet ToString() ) mot per plattformsvärden, så en anpassad serverdel vars plattformssträng matchar en av de namngivna egenskaperna nedan (till exempel GTK) matchar korrekt vid körning. Matchningen är skiftlägeskänslig (ordningstal, per DevicePlatform likhet), så identifieraren måste matcha egenskapsnamnets hölje exakt – en serverdelsrapportering DevicePlatform.Create("gtk") (gemener) matchar GTK inte egenskapen och faller igenom till Default. Observera att kompileringstidsoptimeringen (SimplifyOnPlatformVisitor) för närvarande endast identifierar målramverken/-macos-maccatalyst-ios//-android. Alla andra målramverk (inklusive -windows och -tizen) och alla anpassade serverdelar återgår till körningsmatchning.

Eftersom ett XAML-markeringstillägg mappar varje namngivet argument till en CLR-egenskap kan det infogade {OnPlatform iOS=…, Android=…} formuläret bara uttrycka plattformarna som exponeras som egenskaper här. Om du vill rikta in dig på en godtycklig anpassad plattform (t.ex. en serverdelsrapportering DevicePlatform.Create("Web")) använder du elementformuläret som accepterar valfri plattformssträng:

<OnPlatform x:TypeArguments="x:String">
    <On Platform="Web" Value="…" />
    <On Platform="iOS, Android" Value="…" />
</OnPlatform>

Konstruktorer

Name Description
OnPlatformExtension()

Tillhandahåller ett XAML-tillägg som returnerar olika värden beroende på vilken plattform appen körs på.

Egenskaper

Name Description
Android

Hämtar eller anger värdet som ska användas på Android.

Converter

Hämtar eller anger en konverterare som ska tillämpas på det plattformsspecifika värdet.

ConverterParameter

Hämtar eller anger en parameter som ska skickas till konverteraren.

Default

Hämtar eller anger standardvärdet som ska användas om inget plattformsspecifikt värde har angetts.

GTK

Hämtar eller anger värdet som ska användas i GTK.

iOS

Hämtar eller anger värdet som ska användas i iOS.

MacCatalyst

Hämtar eller anger värdet som ska användas på Mac Catalyst.

macOS

Hämtar eller anger värdet som ska användas på macOS.

Tizen

Hämtar eller anger värdet som ska användas på Tizen.

UWP
Föråldrad.

Hämtar eller anger värdet som ska användas på UWP. Använd WinUI i stället.

WinUI

Hämtar eller anger värdet som ska användas i Windows (WinUI).

WPF

Hämtar eller anger värdet som ska användas på WPF.

Metoder

Name Description
ProvideValue(IServiceProvider)

Tillhandahåller ett XAML-tillägg som returnerar olika värden beroende på vilken plattform appen körs på.

Gäller för