在我的应用程序中,我使用了ScintillaNET DLL,并创建了一个名为BufferedScintilla的类,该类继承了控件并对其进行了双缓冲处理。没有什么不寻常的,只是普通的C#继承...然后,我修改了我的窗体的Designer.cs文件,并从使用ScintillaNET.Scintilla()切换到了BufferedScintilla()。
应用程序按预期加载和正常工作,但Visual Studio 2013设计器无法加载,告诉我“无法将类型为BufferedScintilla的对象强制转换为类型ScintillaNET.Scintilla。”我尝试了一切,清理解决方案并重新构建,仅重新构建,调试,关闭和重新启动Visual Studio甚至重新启动电脑,但都没有任何帮助... Visual Studio Designer拒绝让我设计我的表单。
再次说明,应用程序运行良好,我确信表单上的控件是新的BufferedScintilla,而不是ScintillaNET.Scintilla,因为我可以看到效果(它是双缓冲的,我正在其上绘制的自定义图形不再闪烁),所以我100%确定应用程序使用了继承的组件。
我确定这是一些Visual Studio小缺陷,因此我正在寻找解决方案,让它再次让我设计我的应用程序。
编辑:为了澄清,Visual Studio 2013 Update 1和Visual Studio 2010中也会发生同样的情况。我检查了程序集,它是作为Any CPU构建的,因此在Visual Studio设计器中不应该有问题...
编辑:由于似乎无法修复这个问题(某种错误),因此我正在寻找一种在构建项目之前自动替换Designer.cs文件中的行的方法,然后在项目被构建之后(或未构建)。是否有任何Visual Studio工具可以在按下Build按钮之前自动替换类中的一些文本,并在构建项目之后进行替换?我想替换构造函数和声明,以便在设计时它是ScintillaNET.Scintilla,在运行时它是BufferedScintilla。谢谢!
提前致谢!
瓦利
应用程序按预期加载和正常工作,但Visual Studio 2013设计器无法加载,告诉我“无法将类型为BufferedScintilla的对象强制转换为类型ScintillaNET.Scintilla。”我尝试了一切,清理解决方案并重新构建,仅重新构建,调试,关闭和重新启动Visual Studio甚至重新启动电脑,但都没有任何帮助... Visual Studio Designer拒绝让我设计我的表单。
再次说明,应用程序运行良好,我确信表单上的控件是新的BufferedScintilla,而不是ScintillaNET.Scintilla,因为我可以看到效果(它是双缓冲的,我正在其上绘制的自定义图形不再闪烁),所以我100%确定应用程序使用了继承的组件。
我确定这是一些Visual Studio小缺陷,因此我正在寻找解决方案,让它再次让我设计我的应用程序。
编辑:为了澄清,Visual Studio 2013 Update 1和Visual Studio 2010中也会发生同样的情况。我检查了程序集,它是作为Any CPU构建的,因此在Visual Studio设计器中不应该有问题...
编辑:由于似乎无法修复这个问题(某种错误),因此我正在寻找一种在构建项目之前自动替换Designer.cs文件中的行的方法,然后在项目被构建之后(或未构建)。是否有任何Visual Studio工具可以在按下Build按钮之前自动替换类中的一些文本,并在构建项目之后进行替换?我想替换构造函数和声明,以便在设计时它是ScintillaNET.Scintilla,在运行时它是BufferedScintilla。谢谢!
提前致谢!
瓦利