Xamarin Forms中的InitializeComponent不存在。

8

我正在学习使用Visual Studio 2015创建Xamarin Forms应用程序,并尝试使用Xaml创建一个简单的Shared项目,但是我一直遇到“InitializeComponent不存在”的问题(以及在cs类中对Xaml控件的任何引用)。

据我所知,在最新版本的Xamarin中,Xaml可以在Shared Xamarin Forms项目中使用(而不仅仅是在PCL项目中)。我已经尝试运行最新的测试版,但仍然没有成功。

非常感谢您的建议。


请分享XAML和CS文件。 - Sreeraj
4个回答

13

结果发现我必须手动更改所有Xaml文件的属性,如下所示:

Build Action: Embedded resource
Custom Tool: MSBuild:UpdateDesignTimeXaml

由于某些原因,在最新的Xamarin中,添加新的Xaml窗体文件不会默认在VS2015中进行设置。


如果发生这种情况,卸载 .csproj 文件并检查是否存在冲突/冗余的 <RemoveItem><ItemGroup> 标签用于这些 .xaml / .xaml.cs 文件也是值得的。如果是这样,请将它们全部删除(VS默认导入解决方案/项目文件夹中的所有文件和文件夹,这些标签仅在您希望以与实际项目结构不同的方式在 VS 中显示文件时使用)。 - Sebastián Vansteenkiste

5

我曾经遇到过同样的问题。后来发现,在XAML文件中,完全限定的类名(在主节点中的x:Class属性)必须与xaml.cs文件的名称完全匹配。我纠正了命名空间大小写,问题得到解决!


3
当您的XAML标记无效时,就会出现这种情况。有一个后台编译任务解析XAML文件并生成代码文件(通常对开发人员隐藏),该文件声明了这些控件引用。如果您的XAML无效,则此任务将悄悄失败,并且您描述的症状是您的第一个提示。
使用标准XML注释语法(使用<!---->将其包装起来)注释掉XAML文件的内容,然后重新构建项目以清除所有错误。您还可能需要暂时注释掉一些.cs文件中的代码才能使其构建。一旦您构建成功,就可以回去逐步取消注释XAML,直到找到导致错误的部分。

1

尝试一下: 打开程序包管理器控制台,输入以下命令: update-package -project 您的PCL项目名称 -reinstall


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接