Xamarin Forms中Grid的RowDefinitions能否在定义时同一行使用OnIdiom?
Xamarin.Forms Grid RowDefinitions 中 OnIdiom 的内联使用格式
内联写法的正确格式
你可以直接在RowDefinitions属性内联使用OnIdiom,核心是把对应不同设备类型的完整行定义字符串,按照OnIdiom的语法组织起来。比如针对手机和平板设置不同的第一行高度:
<Grid BackgroundColor="LightGreen" Margin="0, 10 ,0 ,10" RowDefinitions="{OnIdiom Phone='Auto, *, 100', Tablet='100, *, 100'}"> </Grid>
每个设备类型对应的行定义,格式要和常规RowDefinitions一致——用逗号分隔各行的高度值,整个表达式作为RowDefinitions的完整属性值。
如果只需要给特定设备类型设置特殊值,其他用默认,也可以简化写法:
RowDefinitions="{OnIdiom Default='Auto, *, 100', Desktop='200, *, 100'}"
是否支持内联定义?
完全支持内联属性定义,不需要必须创建单独的RowDefinitions节点。内联写法更简洁,效果和拆分到每个RowDefinition标签中设置的方式完全等价。
内容的提问来源于stack exchange,提问作者ThisQRequiresASpecialist
相关产品推荐
相关产品推荐

