【发布时间】:2011-08-18 04:13:29
【问题描述】:
我可以在 xaml 中声明一个整数或双精度值。但是,我无法添加十进制值。它构建正常,但随后我得到:
System.Windows.Markup.XamlParseException:“十进制”类型不是 找到了。
这是 xaml 代码:
<UserControl.Resources>
<system:Int32 x:Key="AnIntValue">1000</system:Int32><!--Works!-->
<system:Double x:Key="ADoubleValue">1000.0</system:Double><!--Works!-->
<system:Decimal x:Key="ADecimalValue">1000.0</system:Decimal><!--Fails at runtime-->
</UserControl.Resources>
这是我声明系统命名空间的方式:
xmlns:system="clr-namespace:System;assembly=mscorlib"
编辑:解决方法: 正如 Steven 所说,通过代码隐藏添加资源似乎工作正常:
Resources.Add("ADecimalValue", new Decimal(1000.0));
编辑:答案: 在 WPF 中做同样的事情似乎工作正常。所以我想这是一个隐藏的银光限制。感谢 Steven 的发现。
【问题讨论】:
-
您如何尝试在 xaml 中使用此资源?
-
我在转换器参数中使用它进行绑定。我将其称为静态资源。
标签: silverlight xaml decimal