Xamarin.Forms - 创建新页面时InitializeComponent不存在

2024-06-24

我正在使用 Visual Studio 来尝试 Xamarin.Forms。我正在尝试遵循指南:http://developer.xamarin.com/guides/cross-platform/xamarin-forms/xaml-for-xamarin-forms/getting_started_with_xaml/ http://developer.xamarin.com/guides/cross-platform/xamarin-forms/xaml-for-xamarin-forms/getting_started_with_xaml/

简而言之,我使用 PCL 创建一个 Xamarin.Forms 解决方案,然后尝试添加Forms XAML Page到 PCL 项目。

创建的隐藏代码如下所示:

    public partial class Page1 : ContentPage
    {
        public Page1()
        {
            InitializeComponent(); 
        }
    }

这里的问题是InitializeComponent();是红色的。 当我尝试构建时我得知The name 'InitializeComponent' does not exist in the current context

我一直在寻找解决方案,即使其他人也遇到了同样的麻烦,他们的解决方案对我不起作用。这是我尝试使用的一个建议:http://blog.falafel.com/xamarin-error-initializecomponent-does-not-exist-in-the-current-context/ http://blog.falafel.com/xamarin-error-initializecomponent-does-not-exist-in-the-current-context/

如果您有解决此问题的方法,请告诉我。谢谢!

Update:

我的 PCL(我也想在其中添加 XAML 页面)包含:

App.cs:

    public class App : Application
    {
        public App()
        {
            // The root page of your application
            MainPage = new ContentPage
            {
                Content = new StackLayout
                {
                    VerticalOptions = LayoutOptions.Center,
                    Children = {
                        new Label {
                            XAlign = TextAlignment.Center,
                            Text = "Welcome to Xamarin Forms!"
                        }
                    }
                }
            };
        }

        protected override void OnStart()
        {
            // Handle when your app starts
        }

        protected override void OnSleep()
        {
            // Handle when your app sleeps
        }

        protected override void OnResume()
        {
            // Handle when your app resumes
        }
    }

还有我的 XAML 页面:

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             x:Class="XamaTest.MyXamlPage">
    <Label Text="{Binding MainText}" VerticalOptions="Center" HorizontalOptions="Center" />
</ContentPage>

隐藏代码:

    public partial class MyXamlPage : ContentPage
    {
        public MyXamlPage()
        {
            InitializeComponent();
        }
    }

UPDATE:这个错误通常不会出现在 VS 2015 中,如果出现,这是我原来的答案:

找到解决方案了! 右键单击 .XAML 文件,选择特性.

您将看到一个名为定制工具。将其值更改为MSBuild:Compile to MSBuild:UpdateDesignTimeXaml

这将解决问题。 不知道否决票,但这是我的屏幕截图:

Screenshot UPDATE:

它很少再次出现。如果是这样,只需打开 Xaml 和代码隐藏文件并保存它们。我知道,这不是最好的解决方案,但它可以完成工作。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Xamarin.Forms - 创建新页面时InitializeComponent不存在 的相关文章

随机推荐

  • 扩展对象字面量

    var x name japan age 20 x prototype mad function alert USA x mad 上面的代码不起作用 对象字面量无法扩展 或者x mad 这不是正确的打电话方式 你不能这样做 能够使用它来定义
  • 使用通配符 ID 选择 div

    如何使用 ID 但带有通配符来选择 div 如果 DIV 的 ID 是statusMessage 1098 我想以某种方式选择它 例如document getElementById statusMessage 这是因为在生成页面之前 我不知
  • 找不到 npx 命令

    我正在使用 webpack 我需要执行 node modules webpack bin webpack js using npx npx webpack将运行 webpack 二进制文件 node modules webpack bin
  • 编译并运行金属示例

    我已经有一段时间没有使用 XCode 了 但自从 Apple 批评 XCode 6 和新的 Metal API 以来 我不得不检查一下 他们已经发布了示例 例如Basic3D 示例的转换版本 不过 我在编译和运行它们时遇到了问题 我必须添加
  • 在 PySpark 中将结构数组扩展为列

    我有一个来自 Google Analytics 的 Spark 数据框 如下所示 id customDimensions Array
  • 单选按钮未水平排列

    我的 HTML 单选按钮是垂直排列的 而不是水平排列的 另外 每个按钮的文本并不像我希望的那样位于按钮旁边 fieldset legend Payment Method legend fieldset
  • 有没有办法使用 winappdbg 从 Windows 任务管理器中混淆/隐藏命令行?

    我正在使用 python 在 win7 x64 中调用外部程序 但我想隐藏命令行选项 import winpexpect thread winexpect winspawn cmd timeout TIMEOUT import pexpec
  • 为什么当我想安装扩展时会出现 PHP 致命错误

    php composer phar require kartik v yii2 password dev 错误消息 Call to undefined method Fxp Composer AssetPlugin Package Vers
  • 在 Woocommerce 中显示客户订单评论(客户备注)

    当我尝试显示 woocommerce 客户订单评论 不是注释 而是客户在结账过程中可以添加的评论 时 我遇到了一些问题 我将仅添加此问题的相关行 因为其他 woocommerce 数据已正确显示 因此它不应该是设置问题 到目前为止我尝试过的
  • Angular 中的动态标签生成

    我正在尝试使用包含一堆指令名称的数组动态生成表单 scope components textbox textbox radio checkbox label 我想使用 Angular 生成具有这些名称的标签 例如
  • Android:应用程序在即时运行时频繁崩溃

    在我的 Android 应用程序中 我正在启用即时运行来调试它 该应用程序经常给我带来意想不到的错误 如果我进行了干净的构建 这些错误就会得到解决 例如 有时会出现类未找到的异常 而该类实际上存在 此外 有时在尝试强制转换时会出现类强制转换
  • 调用函数并将参数从 Kotlin 传递到 Flutter

    我正在处理PlatformChannels试图与来自Kotlin to Flutter 实际上尝试按照 flutter 平台频道的文档中的说明进行操作 但方向相反 flutter 平台通道文档 https flutter dev docs
  • 无阻塞地从 STDIN 逐行读取

    基本上 我希望从 STDIN 读取行 但我不想在等待新数据时阻塞 几乎就像使用带有超时的流一样 stdin fopen php stdin r do line fgets stdin No input right now if empty
  • 使用 jQuery datepicker 创建特定日期范围

    我正在尝试使用 jQuery 日期选择器来创建开始日期日历和结束日期日历 我正在使用此处看到的 日期范围 示例 http jqueryui com demos datepicker date range http jqueryui com
  • 如何在反应组件中的所有详细信息标签中添加或删除“open”属性?

    我有一个带有 React 组件的页面 该组件使用多个详细 摘要标签 const React require react class samplePage extends React Component render const siteCo
  • WKWebview:禁用交互和点击链接

    有没有办法禁用网络视图上的交互 这样用户就不能比加载的 webview 更进一步了 编辑 禁用 UserInteractions 并不是一个解决方案 因为网站仍然必须可滚动 实施WKNavigationDelegate协议 interfac
  • JavaScriptSerializer UTC 日期时间问题

    我们的客户希望在浏览器中显示与数据库中完全相同的日期和时间值 并且我们将它们作为 UTC 存储在数据库中 起初我们在序列化和 JavaScript 方面遇到了一些问题 DateTime 值移动了两次 首先是为了匹配计算机的本地时区 然后是为
  • 是否有一个更短/更简单的 for 循环版本,可以对任何内容执行 x 次?

    通常我们会使用计数器执行类似 for 或 while 循环的操作 for int i 0 i lt 10 i list Add GetRandomItem 但有时你会混淆界限 你可以使用 while 循环来代替 但是如果你犯了一个错误 这个
  • 覆盖保存文件的足够安全的方法?

    Using cstdio 覆盖文件最安全的方法是什么 在这种情况下 安全 意味着文件不会变得不完整或损坏 该文件将被完全覆盖 或者如果出现问题 它将是旧文件 我想最好的方法是创建一个临时中间文件 然后在中间完成后覆盖旧文件 如果这确实是最好
  • Xamarin.Forms - 创建新页面时InitializeComponent不存在

    我正在使用 Visual Studio 来尝试 Xamarin Forms 我正在尝试遵循指南 http developer xamarin com guides cross platform xamarin forms xaml for