OnPlatformExtension Clase

Definición

Proporciona una extensión de marcado XAML que devuelve valores diferentes en función de la plataforma en la que se ejecuta la aplicación.

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
Herencia
OnPlatformExtension
Atributos
Implementaciones

Comentarios

El valor se resuelve mediante la coincidencia del Platform identificador (el DevicePlatform valor del ToString() struct) con los valores por plataforma, por lo que un back-end personalizado cuya cadena de plataforma coincide con una de las propiedades con nombre siguientes (por ejemplo GTK) se resuelve correctamente en tiempo de ejecución. La coincidencia distingue mayúsculas de minúsculas (ordinal, por DevicePlatform igualdad), por lo que el identificador debe coincidir exactamente con el uso de mayúsculas y minúsculas del nombre de propiedad; un informe DevicePlatform.Create("gtk") de back-end (en minúsculas) no coincide con la GTK propiedad y pasa a Default. Tenga en cuenta que la optimización en tiempo de compilación (SimplifyOnPlatformVisitor) actualmente solo reconoce los/-macos-maccatalyst-ios//-android marcos de destino; todos los demás marcos de destino (incluidos -windows y -tizen) y cualquier back-end personalizado vuelve a la resolución en tiempo de ejecución.

Dado que una extensión de marcado XAML asigna cada argumento con nombre a una propiedad CLR, el formulario insertado {OnPlatform iOS=…, Android=…} solo puede expresar las plataformas expuestas como propiedades aquí. Para dirigirse a una plataforma personalizada arbitraria (por ejemplo, un informe DevicePlatform.Create("Web")de back-end), use el formulario de elemento , que acepta cualquier cadena de plataforma:

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

Constructores

Nombre Description
OnPlatformExtension()

Proporciona una extensión de marcado XAML que devuelve valores diferentes en función de la plataforma en la que se ejecuta la aplicación.

Propiedades

Nombre Description
Android

Obtiene o establece el valor que se va a usar en Android.

Converter

Obtiene o establece un convertidor que se va a aplicar al valor específico de la plataforma.

ConverterParameter

Obtiene o establece un parámetro que se va a pasar al convertidor.

Default

Obtiene o establece el valor predeterminado que se va a usar si no se establece ningún valor específico de la plataforma.

GTK

Obtiene o establece el valor que se va a usar en GTK.

iOS

Obtiene o establece el valor que se va a usar en iOS.

MacCatalyst

Obtiene o establece el valor que se va a usar en Mac Catalyst.

macOS

Obtiene o establece el valor que se va a usar en macOS.

Tizen

Obtiene o establece el valor que se va a usar en Tizen.

UWP
Obsoletos.

Obtiene o establece el valor que se va a usar en UWP. En su lugar, use WinUI.

WinUI

Obtiene o establece el valor que se va a usar en Windows (WinUI).

WPF

Obtiene o establece el valor que se va a usar en WPF.

Métodos

Nombre Description
ProvideValue(IServiceProvider)

Proporciona una extensión de marcado XAML que devuelve valores diferentes en función de la plataforma en la que se ejecuta la aplicación.

Se aplica a