本文共 1062 字,大约阅读时间需要 3 分钟。
头大大
if (HeightDots == null)
{ HeightDots = new MeasureData[2] {new MeasureData( 0.1f, 0.2f, 0.3f), new MeasureData(5f, 6f, 7f) };}
好呗
这个... height dots是这样的 因为下面看了 不必要在null那里就复制
然后 heightdots 那里 就新的复制了
不能直接给[1] [2] 因为它是null
也不能直接set 因为它是null
那么就这样吧 有两个那就赋值两个 然后
直接给(0.1f 0.2f ) 也不行 提示不能直接转化
可是measuredata本来就只有x y z 啊 那怎么还不行 好吧 发现要new一个一样的类型才可以了
附上原来的代码
public MeasureData[] HeightDots
{ get { return (MeasureData[])GetValue(HeightDotsProperty); } set { SetValue(HeightDotsProperty, value); } } public static readonly DependencyProperty HeightDotsProperty = DependencyProperty.Register("HeightDots", // 依赖属性名称 typeof(MeasureData[]),// 属性类型 好的 显然这是 三个float typeof(IsoHeightCtrl),// 属性所有者 嗯嗯... 这个算是主类吧x new PropertyMetadata(null, // 属性的默认值 果然 null 是不行的 (s, e) => { IsoHeightCtrl ihc = s as IsoHeightCtrl; ihc.Draw(); }));public struct MeasureData { public MeasureData(float x, float y, float z) { X = x; Y = y; Z = z; } public float X; public float Y; public float Z; }
c# 里 还有一个 叫依赖属性
依赖属性就是一种自己可以没有值,并且可以通过绑定从其他数据源获取值。依赖属性可支持WPF中的样式设置、数据绑定、继承、动画及默认值。见 (留下了感动的泪水
转载地址:http://oouti.baihongyu.com/