c# - 制作一些 OnIdiom 和 OnPlatform StaticResource

标签 c# xaml xamarin xamarin.forms

我想使用 StaticResource 并通过使用类似这样的语法(如果存在)从 VS 2017 自动完成中受益:

<x:Double x:Key="NormalSpacing">
    <OnIdiom x:TypeArguments="x:Double">
        <OnIdiom.Phone>
            <OnPlatform x:TypeArguments="x:Double" iOS="7" Android="3" />
        </OnIdiom.Phone>
        <OnIdiom.Tablet>
            <OnPlatform x:TypeArguments="x:Double" iOS="15" Android="10" />
        </OnIdiom.Tablet>
    </OnIdiom>
</x:Double>

很快我想将 key 提供给包含 OnIdiomOnPlatform 标签的主标签。

最佳答案

使用带有紧凑的 OnIdiomOnPlatform 语法的自动完成样式:

<Style x:Key="stackLayoutStyle" TargetType="StackLayout">
    <Setter Property="Spacing" 
            Value="{OnIdiom 
        Phone  = {OnPlatform iOS=7,  Android=3   },
        Tablet = {OnPlatform iOS=15, Android=10 }}" >
    </Setter>
</Style>
...
<StackLayout Style="{StaticResource stackLayoutStyle}">
...
</StackLayout>

关于c# - 制作一些 OnIdiom 和 OnPlatform StaticResource,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55450456/

相关文章:

c# - 是什么原因导致 svcutil 在代理远程服务器时建议使用 netNamedPipeBinding?

visual-studio - Xamarin Sport 应用程序 - 未知标识符

c# - Xamarin Forms 向 View 添加标签

ios - 如何在 iOS 上的 Xamarin 中禁用手势?

c# - 绑定(bind)边界可见性/隐藏在 WPF 中

c# - 带负号 (-) 和点号 (.) 的数字键盘

c# - 将 Swift 转换为 C# 以在 Xamarin 中使用

c# - 检查消息框是否打开WPF C#?

c# - 按第一个字符(字母和数字)对字符串进行分组

c# - 从函数中提取函数名