<ContentPage Title="Introduction"
NavigationPage.HasBackButton="False"
xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="Xamarin.IntroductionPage">
我看到其他一些视频教程,他们对NavigationPage.HasBackButton =“False”没有问题但是在我的Visual Studio上使用Xamarin会产生构建错误
Can not find a property named "HasBackButton" or static method named "GetHasBackButton" ...
可能导致这种情况的原因是什么?感谢
答案 0 :(得分:2)
我也看到了同样的问题。似乎是XAMLC编译器由于某种原因没有正确处理附加属性。如果你在程序集级别有一个XamlCompilation属性,你可以将它注释掉,问题就会消失,直到找到合适的解决方案。
经过更多研究后我发现XAMLC最近必须更改,现在希望附加可绑定属性的Get / Set方法的第一个参数是BindableObject类型。不幸的是,NavigationPage.GetHasBackButton和NavigationPage.SetHasBackButton都期望将Page作为其第一个参数。由于NavigationPage是由平台提供的,因此唯一的解决方法似乎是注释掉XamlCompilation属性或删除XAML中的NavigationPage.HasBackButton行,并将其移动到编译后面的代码,没有任何问题:
public class MyContentPage : ContentPage
{
InitializeComponent();
NavigationPage.SetHasBackButton( this, false );
}
希望Xamarin尽快为这种回归提供修复。
答案 1 :(得分:0)
有同样的错误。
删除* .cs中的[XamlCompilation(XamlCompilationOptions.Compile)]
就可以了。