【发布时间】:2010-09-10 09:40:10
【问题描述】:
我正在尝试创建一个派生自 System.Windows.Controls.Control 且可见性为 internal 的 Silverlight 自定义控件,但在尝试应用默认样式时遇到了问题。这是该类的最简单形式...
internal class MyClass : Control
{
public MyClass()
{
DefaultStyleKey = typeof(MyClass);
}
}
...这是generic.xaml中默认样式的简单形式...
<Style TargetType="controls:MyClass">
<Setter Property="Margin" Value="10" />
</Style>
虽然这个控件没有做任何有用的事情,但是可以创建它的一个实例,但前提是它的可见性是public。当类被标记为internal 时,应用程序会引发以下运行时错误:
Error: Unhandled Error in Silverlight Application
Code: 4004
Category: ParserError
Message: No matching constructor found on type 'MyClass'.
File:
Line: 11
Position: 40
您能否告知我需要做什么才能使内部控制类对 Xaml 解析器可见。
谢谢, 蒂姆
【问题讨论】:
-
+1 因为我收到了同样的错误信息,并且出于我的目的,公开课程就足够了,所以这解决了我的问题。
-
+1 因为我在 Application.Resources 字典中使用的内部类遇到了这个问题
标签: silverlight xamlparseexception