WPF创建Window以编程方式抛出Resources

时间:2013-01-17 09:52:05

标签: wpf resourcedictionary

我有一个需要单元测试的WPF窗口,所以我需要使用C#代码创建它的实例。 Window正在使用单独字典中提供的一些DataTemplate。 如果我运行应用程序一切都很好,但是当我在单元测试中创建一个新的Window实例时,使用以下代码:

MainWindow mockWindow = new MainWindow();

抛出以下异常:

Test method 
[xxx] threw exception: 
System.Windows.Markup.XamlParseException: 'Provide value on 'System.Windows.StaticResourceExtension' threw an exception.' 
Line number '48' and line position '30'. ---> 
System.Exception: Cannot find resource named 'TreeViewItemTemplate'. 
Resource names are case sensitive.

我认为“不知何故”我需要在创建视图之前初始化资源。 我怎么能以编程方式做到这一点?

1 个答案:

答案 0 :(得分:1)

使用DynamicResource而不是StaticResource。