admin管理员组文章数量:1643943
智能设备 Windows CE下,自定义控件中有一属性为
List<T> Points = new List<T>();
/// <summary>
/// 获取或设置当前未记录的点集合
/// </summary>
public List<T> CurrentPoints
{
get { return Points;}
set { Points = value; }
}
T是自定义的一个结构:
/// <summary>
/// 点结构
/// </summary>
public struct T
{
public float X;
public float Y;
}
有时会出现以下错误:
属性“CurrentPoints”的代码生成失败。错误是:“程序集“myControl,Version 1.0.0.0, Culture = neutral, PublicKeyToken = null ”中的类型“MapControl.PointF”未标记为可序列化。”
http://blog.csdn/wxm3630478/article/details/4295122上提供了几种解决方法,但是没有解决我的问题,大家可以尝试下。
我认为出现上述问题原因是List<T>集合类型作为属性造成的原因,我最后的解决办法是:不将List<T>集合作为一个属性提供出去而是通过方法:
Public T[] GetCurrentPoints
{
Return Points.ToArray();
}
Public void SetCurrentPoints(T[] t)
{
Points.AddRange(t);
}
为了稳定起见,参数的传递也改成了基本的数组类型。
版权声明:本文标题:[属性" * "的代码生成失败.错误是:"程序集"*.Version=1.0.0.0,Culture=neutral,......... 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/dongtai/1729377626a1199021.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论