- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这么多年后,我仍在使用 .NET CF 3.5 在 C# 中为 Wince 编写程序,并且我有一个自定义控件,其中包含基于 WinForm 控件的自定义事件。我只是似乎没有找到 [DefaultEvent] 属性。
我认为这可以以某种方式完成,因为如果没有这个属性,人们将如何创建带有默认事件的自定义控件,以便在当时的设计器中双击?我正在使用 VS2008。有什么想法吗?
谢谢。
最佳答案
据我所知,设计器(显然不在 .NET CF 上运行)在后台使用完整框架中的控件。有某种映射使用 DesigntimeAttributes.xmta
为 .NET CF 应用自定义属性。这样他们就不必将所有设计器移植到 CF。
This link显示了如何使用“查看类图”功能生成 DesigntimeAttributes.xmta
,并且 this link有一些关于编辑文件的附加信息。
简而言之,您将 DesigntimeAttributes.xmta
文件添加到您的项目中,内容如下:
<Classes xmlns="http://schemas.microsoft.com/VisualStudio/2004/03/SmartDevices/XMTA.xsd">
<Class Name="MyProject.MyCustomControl">
<DefaultEvent>MyDefaultEvent</DefaultEvent>
</Class>
</Classes>
至于您遇到的 genasm.exe
错误,this link包含信息和重现它的步骤。我创建了一个返回 SqlCeCommand
的方法(我假设这是您的 CommandCollection
属性返回的)并得到相同的错误。当我将该方法更改为返回 DbCommand
时,错误消失了。
如果您可以将每个 SqlCeCommand
替换为 DbCommand
(以及该系列中的所有其他类型),您可能想去那里 - 但解决方法似乎很繁重仅添加默认事件。
关于c# - 如何在 WinCE Compact Framework 3.5 中标记用户控件的默认事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38363754/
我是一名优秀的程序员,十分优秀!