如何只针对特定平台设置OnPlatform?

4 xaml xamarin xamarin.forms

我正在使用 Xamarin.Forms 进行编程。我想知道如何OnPlatform在 XAML 中使用仅设置单个平台的高度请求?-1如果未引用平台,我想保留默认值。

我目前有以下代码:

<ListView.HeightRequest>
    <OnPlatform x:TypeArguments="x:Double">
        <On Platform="WPF" Value="153" />
        <On Platform="Android" Value="-1" />
        <On Platform="iOS" Value="-1" />
        <On Platform="UWP" Value="-1" />
    </OnPlatform>
</ListView.HeightRequest>
Run Code Online (Sandbox Code Playgroud)

我希望我只需要写这样的东西:

<ListView.HeightRequest>
    <OnPlatform x:TypeArguments="x:Double">
        <On Platform="WPF" Value="153" />
    </OnPlatform>
</ListView.HeightRequest>
Run Code Online (Sandbox Code Playgroud)

这不行,可以吗?

Jac*_*Hua 5

您可以将具有相同值的平台写在一行中:

<ListView.HeightRequest>
    <OnPlatform x:TypeArguments="x:Double">
        <On Platform="WPF" Value="153" />
        <On Platform="Android,iOS,UWP" Value="-1" />
    </OnPlatform>
</ListView.HeightRequest>
Run Code Online (Sandbox Code Playgroud)

请参阅:提供特定于平台的值