【发布时间】:2017-08-26 16:01:32
【问题描述】:
我对 Xamarin.Forms 非常陌生,并尝试使用 this nice tutorial 进行学习。
我已成功在 Visual Studio 2017 社区版中设置了所有内容,并成功部署到模拟设备和物理设备(仅限 Android)。
在各种试验中,我注意到一些 XAML 错误没有突出显示并且构建成功执行,但 XAML 在运行时失败,导致应用程序崩溃。例如。拼错样式名称或任何属性值。
在调试模式下运行只会挂起应用程序。打破它表示以下行:
public partial class MainPage : global::Xamarin.Forms.ContentPage { [System.CodeDom.Compiler.GeneratedCodeAttribute("Xamarin.Forms.Build.Tasks.XamlG", "0.0.0.0")]
private void InitializeComponent() {
// this is the last line from my code that hands when XAML is invalid
this.LoadFromXaml(typeof(MainPage));
}
}
恢复执行会显示出问题的提示(没有新的 VS2017 异常接口提供的花哨细节):
未处理的异常:
Xamarin.Forms.Xaml.XamlParseException:发生
问题: 有没有办法更早地捕获无效的 XAML 错误?或者至少获得更多相关信息? 或者这是 Xamarin.Forms 的已知限制?
更糟糕的是,属性值的自动完成似乎在 VS2017 中不起作用(它在 VS2015 中起作用),但这是另一个问题的另一个问题。
有关已安装软件的更多详细信息:
Microsoft Visual Studio Community 2017
Version 15.0.26228.9 D15RTWSVC
Microsoft .NET Framework
Version 4.6.01586
Installed Version: Community
Xamarin 4.3.0.795 (aece090)
Visual Studio extension to enable development for Xamarin.iOS and Xamarin.Android.
Xamarin.Android SDK 7.1.0.41 (9578cdc)
Xamarin.Android Reference Assemblies and MSBuild support.
Xamarin.iOS and Xamarin.Mac SDK 10.4.0.123 (35d1ccd)
Xamarin.iOS and Xamarin.Mac Reference Assemblies and MSBuild support.
【问题讨论】:
标签: xaml xamarin.forms visual-studio-2017 xamlparseexception