我在 Visual Studio 的 .NETCF windows mobile 项目中显示自定义(继承)控件时遇到问题。该控件在设计器图面上显示为一个灰色框,其中写有类名。
作为一个测试用例,我有一个简单的控件定义为:
public class ucButton2 : Button
{
}
应该就像一个按钮,但它给出了有趣的行为。
过去,我用设计时属性文件解决了这个问题或类似问题。所以我在文件 DTA.xmta 中包含了以下内容
<?xml version="1.0" encoding="utf-16"?>
<Classes xmlns="http://schemas.microsoft.com/VisualStudio/2004/03/SmartDevices/XMTA.xsd">
<Class Name="MyProject.CustomControls.ucButton2">
<Description>Testbutton</Description>
<DesktopCompatible>true</DesktopCompatible>
</Class>
</Classes>
现在事情变得非常奇怪——我开始在不相关的类型化数据集文件中收到来自 genasm.exe 的编译错误。
遵循这篇文章最后评论的建议: http ://www.simonrhart.com/2008/02/upgrading-your-solutions-to-visual.html
我将 DTA.xmta 更改为具有“嵌入式资源”的构建操作
现在应用程序编译了,但没有任何改变——设计器界面仍然只显示一个带有类名的空框。
我已经关闭并重新打开了 Visual Studio,以确保不会发生奇怪的缓存——同样的行为。
就像我说的,过去 xmta 文件已经解决了这类问题。但这次没有。但同时,在过去,添加 xmta 文件并不会导致 genasm.exe 在编译时出错。在我的另一个项目中,我的 xmta 文件的构建操作为“无”,而不是“嵌入式资源”。
在运行时,一切正常。这纯粹是一个设计时问题。任何帮助将非常感激。