1

我有一个非常简单的页面,上面有一些控件。我的问题仅出现在实际设备上,并且仅出现在运行 Win10 Mobile 版本 1607 Build 10.0.14946.1000 的 Lumia 1520 上。在运行 Win10 Mobile 版本 1607 OS Build 10.0.14393.693 的 Lumia 950 上不会发生这种情况。

在 1520 上,我卸载了我的应用程序,重新启动设备,然后尝试在设备上调试应用程序。一切正常。然后我停止调试并尝试再次开始调试,我的页面的 InitializeComponent 方法没有初始化我的任何控件。

这意味着在这段代码运行之后:

    [System.CodeDom.Compiler.GeneratedCodeAttribute("Xamarin.Forms.Build.Tasks.XamlG", "0.0.0.0")]
    private void InitializeComponent() {
        this.LoadFromXaml(typeof(nearbyplaces));
        pgHeader = this.FindByName<global::GBarScene.pageheader>("pgHeader");
        lblPlacesTitle = this.FindByName<global::Xamarin.Forms.Label>("lblPlacesTitle");
        btnMapAll = this.FindByName<global::Xamarin.Forms.Label>("btnMapAll");
        lblDataSource  = this.FindByName<global::Xamarin.Forms.Label>("lblDataSource ");
        btnUseGPS = this.FindByName<global::Xamarin.Forms.Image>("btnUseGPS");
        lblRatingsFor = this.FindByName<global::Xamarin.Forms.Label>("lblRatingsFor");
        lblDowName = this.FindByName<global::Xamarin.Forms.Label>("lblDowName");
        bvUnderline = this.FindByName<global::Xamarin.Forms.BoxView>("bvUnderline");
        lvPlaces = this.FindByName<global::Xamarin.Forms.ListView>("lvPlaces");
    }

每个控件(psHeader、lvPlaces 等)都仍然为空。(如果我在第一次运行后尝试在 1520 上启动应用程序而不进行调试,它会崩溃)

我在输出窗口中看不到任何内容表明其他领域存在挑战。知道为什么会这样吗?

更新更新:所以我重置了设备(我得到了相同的构建等)并再次尝试测试。我现在收到一些错误信息。以下是重现错误的步骤以及错误信息:

  1. 从设备上卸载任何以前版本的应用程序。
  2. 重启设备
  3. 在设备上测试应用程序。(它应该可以正常工作。)
  4. 在 Visual Studio 2015 环境中单击停止按钮
  5. 此时只需单击 Visual Studio 中的“运行”按钮,无需在应用程序中进行任何更改,它将在手机上正常启动。
  6. 在 Visual Studio 2015 环境中单击停止按钮
  7. 在应用程序的主页中进行更改并重新编译。确保 Build 行显示至少 1 个项目成功,而不是全部更新或跳过。

    2 成功,0 失败,0 最新,2 跳过 ==========

    1. 再次在设备上运行应用程序。

在 LoadApplication 行生成错误,如下所示:

public sealed partial class MainPage
{
    public MainPage()
    {
        this.InitializeComponent();

        this.NavigationCacheMode = NavigationCacheMode.Required;

        LoadApplication(new GBarScene.App());

以下是错误信息: Xamarin.Forms.Platform.WinRT.ni.DLL 中出现“System.ArgumentNullException”类型的异常,但未在用户代码中处理。

我单击查看详细信息并看到以下信息:“值不能为空。\r\n参数名称:newRoot”}

我希望这有助于解决这个问题。

更新:这个问题也发生在我升级到 Win 10 Mobile 的 Lumia 640 XL 上。

4

0 回答 0