我声明了一个“Id”依赖项属性:
public long Id
{
get { return (long)GetValue(IdProperty); }
set { SetValue(IdProperty, value); }
}
public static readonly DependencyProperty IdProperty =
DependencyProperty.Register("Id", typeof(long),
typeof(Component), new PropertyMetadata(-1));
“组件”是具有“Id”的用户控件。
当我运行应用程序时,它给了我一个例外:
PresentationCore.dll中出现未处理的“System.TypeInitializationException”类型异常
附加信息:“My_Program.Component”的类型初始化程序引发了异常。
如果我将类型“long”更改为“int”,一切正常。 问题是什么?我不能创建“long”类型的依赖项属性吗?
感谢您的帮助。
答案 0 :(得分:4)
尝试将默认值转换为long:
new PropertyMetadata((long)-1);
答案 1 :(得分:4)
尝试使用后缀L
,即:-1L