使用代码在Silverlight中创建HierarchicalDataTemplate

时间:2009-11-12 16:29:34

标签: silverlight xaml hierarchicaldatatemplate xamlreader

我正在尝试在Silverlight中的代码中创建HierarchicalDataTemplate(来自Silverlight Toolkit),遵循以下有关从代码创建DataTemplates的建议:

Creating a Silverlight DataTemplate in code

但是,我无法让它适用于HierarchicalDataTemplate

我尝试使用Silverlight Toolkit附带的XamlBuilder,但这给了我一个错误。

我已经尝试了XamlReader,并且包含了各种默认和前缀名称空间,但没有运气。

如果我运行XamlBuilder的Build方法,我会得到以下字符串:

<HierarchicalDataTemplate xmlns:x=\"http://schemas.microsoft.com/winfx/2006/xaml\" xmlns:attached=\"clr-namespace:MyStuff;assembly=MyStuff\" xmlns=\"clr-namespace:System.Windows;assembly=System.Windows.Controls\"><attached:MyUserControl /></HierarchicalDataTemplate>

我得到的错误是:

  

AG_E_PARSER_NAMESPACE_NOT_SUPPORTED

1 个答案:

答案 0 :(得分:3)

使用Silverlight Xaml解析器,默认的xmlns 必须为“http://schemas.microsoft.com/winfx/2006/xaml/presentation”,即使您不使用它。因此,将xmlns声明添加到Xaml字符串中,并将System.Windows clr-namespace声明更改为使用一些前缀。