C# Symbol MC32N0使用VS2008升级:";“无效卡斯特例外”;

C# Symbol MC32N0使用VS2008升级:";“无效卡斯特例外”;,c#,embedded,compact-framework,windows-ce,barcode-scanner,C#,Embedded,Compact Framework,Windows Ce,Barcode Scanner,我不得不将我的C#应用程序升级为运行Windows Embedded Compact 7的Symbol移动计算机(MC32N0),这是为运行CE 5.0和CE 6.0的MC3090编写的 因此,我不得不从VisualStudio2005迁移到VisualStudio2008,因为2008使用了Compact Framework 3.5。(嵌入式Compact 7随附CF3.5) 因此,我编译了我的应用程序,没有错误或警告,一切看起来都很好,我去把应用程序安装到设备上,打开我的应用程序,并得到一个

我不得不将我的C#应用程序升级为运行Windows Embedded Compact 7的Symbol移动计算机(MC32N0),这是为运行CE 5.0和CE 6.0的MC3090编写的

因此,我不得不从VisualStudio2005迁移到VisualStudio2008,因为2008使用了Compact Framework 3.5。(嵌入式Compact 7随附CF3.5)

因此,我编译了我的应用程序,没有错误或警告,一切看起来都很好,我去把应用程序安装到设备上,打开我的应用程序,并得到一个“InvalidCastException”错误。不知道为什么

为什么?

我来告诉你为什么

出于某种原因,VisualStudio2008决定向我的numQty对象/类强制转换ISupportInitialize接口

(此应用程序用于库存,因此我必须创建自己的numQty,以便用户可以单击“向上箭头”添加数量,或单击“向下箭头”减少任何给定零件的数量。可能是因为VS2008决定搞乱我是“特殊的”)

下面是Visual Studio所做的,我对此进行了注释:

    private void InitializeComponent()
    {
     ...
      //((System.ComponentModel.ISupportInitialize)(this.numQty)).BeginInit();
      //((System.ComponentModel.ISupportInitialize)(this.numQty)).EndInit();
     ...
    }
我所要做的就是注释掉表单设计器类(frmMain.Designer.cs)中InitializeComponent()方法中的这两行

希望这有助于其他Symbol MC32N0开发人员从MC3090升级。

我会告诉你为什么

出于某种原因,VisualStudio2008决定向我的numQty对象/类强制转换ISupportInitialize接口

(此应用程序用于库存,因此我必须创建自己的numQty,以便用户可以单击“向上箭头”添加数量,或单击“向下箭头”减少任何给定零件的数量。可能是因为VS2008决定搞乱我是“特殊的”)

下面是Visual Studio所做的,我对此进行了注释:

    private void InitializeComponent()
    {
     ...
      //((System.ComponentModel.ISupportInitialize)(this.numQty)).BeginInit();
      //((System.ComponentModel.ISupportInitialize)(this.numQty)).EndInit();
     ...
    }
我所要做的就是注释掉表单设计器类(frmMain.Designer.cs)中InitializeComponent()方法中的这两行

希望这有助于其他Symbol MC32N0开发人员从MC3090升级。

我会告诉你为什么

出于某种原因,VisualStudio2008决定向我的numQty对象/类强制转换ISupportInitialize接口

(此应用程序用于库存,因此我必须创建自己的numQty,以便用户可以单击“向上箭头”添加数量,或单击“向下箭头”减少任何给定零件的数量。可能是因为VS2008决定搞乱我是“特殊的”)

下面是Visual Studio所做的,我对此进行了注释:

    private void InitializeComponent()
    {
     ...
      //((System.ComponentModel.ISupportInitialize)(this.numQty)).BeginInit();
      //((System.ComponentModel.ISupportInitialize)(this.numQty)).EndInit();
     ...
    }
我所要做的就是注释掉表单设计器类(frmMain.Designer.cs)中InitializeComponent()方法中的这两行

希望这有助于其他Symbol MC32N0开发人员从MC3090升级。

我会告诉你为什么

出于某种原因,VisualStudio2008决定向我的numQty对象/类强制转换ISupportInitialize接口

(此应用程序用于库存,因此我必须创建自己的numQty,以便用户可以单击“向上箭头”添加数量,或单击“向下箭头”减少任何给定零件的数量。可能是因为VS2008决定搞乱我是“特殊的”)

下面是Visual Studio所做的,我对此进行了注释:

    private void InitializeComponent()
    {
     ...
      //((System.ComponentModel.ISupportInitialize)(this.numQty)).BeginInit();
      //((System.ComponentModel.ISupportInitialize)(this.numQty)).EndInit();
     ...
    }
我所要做的就是注释掉表单设计器类(frmMain.Designer.cs)中InitializeComponent()方法中的这两行


希望这有助于其他Symbol MC32N0开发人员从MC3090升级。

不止您一人:还有提醒-这会在我升级应用程序发布时出现。只有当我在VisualStudio中打开UI时,它才会显示。(xxDesign.cs)如果我只是编辑代码(用于表单),那么就不会发生这种情况。你不是唯一一个这样做的人:提醒-每当我升级应用程序发布时,都会出现这种情况。只有当我在VisualStudio中打开UI时,它才会显示。(xxDesign.cs)如果我只是编辑代码(用于表单),那么就不会发生这种情况。你不是唯一一个这样做的人:提醒-每当我升级应用程序发布时,都会出现这种情况。只有当我在VisualStudio中打开UI时,它才会显示。(xxDesign.cs)如果我只是编辑代码(用于表单),那么就不会发生这种情况。你不是唯一一个这样做的人:提醒-每当我升级应用程序发布时,都会出现这种情况。只有当我在VisualStudio中打开UI时,它才会显示。(xxDesign.cs)如果我只是为表单编辑代码,那么就不会发生这种情况。