在自定义Windows Mobile Control中,处理属性的空图像的代码生成/序列化的正确XMTA是什么?

时间:2011-02-08 15:31:48

标签: windows-mobile compact-framework

我正在构建一个Windows Mobile Compact Frameworks自定义控件,它将可选图像作为属性。通常我不打扰设计时间支持,在这种情况下我需要提供它。如果不存在可选图像且设计人员尝试更新代码,则Visual Studio将引发异常

“属性的代码生成”MyImage“失败。错误是:'对象引用未设置为对象的实例'”

我有一个XMTA文件并尝试了不同的组合,包括“DesignerSerializationVisibility”的不同值。如果不存在可选图像,则不会生成属性的后台代码或抛出异常。如果图像存在,一切正常。

1 个答案:

答案 0 :(得分:3)

我刚看了智能设备框架,这就是我们在XMTA中所做的事情:

<Property Name="ActiveBackgroundImage">
    <Category>Appearance</Category>
    <DefaultValue>
        <Type>System.Drawing.Image, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</Type>
    </DefaultValue>
    <Description>The background image displayed for the control in an active state.</Description>
</Property>

请注意<Value>下缺少<DefaultValue>元素。我认为将其保留为默认设置为null;