【问题标题】:Upgrade error .net 1 winforms application升级错误.net 1 winforms 应用程序
【发布时间】:2012-05-04 08:57:00
【问题描述】:

我有一个用 .NET 1.1 编写的 ld 应用程序,我尝试将其升级到 .NET 3.5。 VsStudio 转换一切正常,升级后我可以毫无问题地运行应用程序。但是,由于字体是另一种字体,因此文本不适合控件。 这就是我的麻烦开始的地方,因为一旦我改变任何东西,无论是控件的大小还是任何字体的大小,在构建之后设计师停止使用该表单,隐藏它并显示错误:

at System.ComponentModel.ReflectPropertyDescriptor.SetValue(Object component, Object     value)
at Microsoft.VisualStudio.Shell.Design.VsTargetFrameworkPropertyDescriptor.SetValue(Object component, Object value)
at System.ComponentModel.Design.Serialization.CodeDomSerializerBase.DeserializePropertyAssignStatement(IDesignerSerializationManager manager, CodeAssignStatement statement, CodePropertyReferenceExpression propertyReferenceEx, Boolean reportError)
at System.ComponentModel.Design.Serialization.CodeDomSerializerBase.DeserializeAssignStatement(IDesignerSerializationManager manager, CodeAssignStatement statement)
at System.ComponentModel.Design.Serialization.CodeDomSerializerBase.DeserializeStatement(IDesignerSerializationManager manager, CodeStatement statement) 

然后,当我尝试运行应用程序时,它根本不会加载这些表单,我只会收到错误消息。 我对 .NET 不太满意,所以任何关于可能是什么错误的提示都会有所帮助,谢谢和问候!

【问题讨论】:

  • 您能否提供伴随该错误的消息?如果您通过 Visual Studio 调试器在打开异常的情况下运行它,您是否会得到任何关于在发生此异常时设置哪个属性的指示?您的某个属性的“设置”部分发生了一些事情,您需要提供一些代码,以便任何人协助调试。
  • 您好,谢谢,它只是一个普通的“未处理异常”消息框。设置表单上的哪个属性似乎并不重要。这一切都有效,直到我改变了一些东西,无论如何,然后设计师崩溃并且它不会运行。我想知道某处的某些文件是否可能被写保护,尽管我将它从顶部文件夹中删除了
  • 这是一个堆栈跟踪,不是错误。

标签: .net winforms upgrade


【解决方案1】:

在框架 1.0 的 resx 文件中,空值使用 表示,并且从 2.0 向前更改为 。 在将设计器从 更改为 value> 之前编辑 resx 并且它可以工作。

【讨论】:

  • 感谢您的回答,抱歉,我不支持您?我应该手动编辑 resx 文件并更改一些值吗?
  • 我遇到了同样的问题,解决办法是手动编辑文件。
  • 好的,你把“使用”改成了?
【解决方案2】:

当我在某些属性上设置“DesignerSerializationVisibility”属性时,它似乎起作用了。这可以防止设计器崩溃,我能够构建和运行我的应用程序

【讨论】:

  • 这是一种绷带,并没有解决真正的问题。
  • 利用该属性会阻止设计者访问该属性,从而避免错误,但我担心在运行时访问该属性可能会导致相同的错误。此外,您可能会丢失设置的持久性,否则这些设置会写入设计器生成的文件。
  • 这听起来不太好。该应用程序确实可以工作,但我猜将来可能会出现奇怪的错误
猜你喜欢
  • 2010-10-01
  • 2010-10-20
  • 2023-03-13
  • 1970-01-01
  • 2021-02-04
  • 1970-01-01
  • 1970-01-01
  • 2011-03-26
  • 1970-01-01
相关资源
最近更新 更多