我有一个嵌入式Xamarin Forms的IOS应用程序。我创建了一个带按钮的简单视图,并希望根据平台设置这些按钮的高度。这是我的代码:
<Button Text="{Binding SendFeedbackButtonText}"
Command="{Binding SendEarlyFeedbackCommand}"
HorizontalOptions="FillAndExpand"
Margin="3,0,3,0" >
<Button.Effects>
<effects:PrimaryButtonEffect />
</Button.Effects>
<Button.HeightRequest>
<OnPlatform x:TypeArguments="x:Double">
<On Platform="iOS" Value="37"/>
</OnPlatform>
</Button.HeightRequest>
</Button>
但这会在构建中出现以下错误:
No property, bindable property, or event found for 'HeightRequest', or mismatching type between value and property.
当我在按钮标记中设置HeightRequest修复时,它可以正常工作。
Xamarin.Forms版本:2.5.0.121934
我还使用Xamarin.Forms和.net标准2.0创建了一个新的空白应用程序来试试这个。只要您没有设置XamlCompilation属性,它就可以工作:
[XamlCompilation(XamlCompilationOptions.Compile)]
您可以在此处找到该项目:{{3}}
我做错了什么?
答案 0 :(得分:2)
根据您的Forms版本,尝试将其切换为
<Button.HeightRequest>
<OnPlatform x:TypeArguments="x:Double" iOS="37"/>
</Button.HeightRequest>
或
<Button.HeightRequest>
<OnPlatform x:TypeArguments="x:Double">
<On Platform="iOS">37</On>
</OnPlatform>
</Button.HeightRequest>