【发布时间】:2012-08-22 18:40:54
【问题描述】:
在我当前的项目中,我有一个相当大的基于 WPF 的应用程序,其中包含大量静态和动态资源。 由于过去进行了许多重构和更改,因此在运行时无法找到许多 DynamicResources,因此没有应用任何值。
我喜欢做的是运行应用程序并在找不到 DynamicResource 时获取输出、异常或其他任何内容。
我尝试构建一个 DefaultTraceListener 和一个 Converter 来检查未使用的 DynamicResources,但无济于事。
有没有人可以帮我解决这个问题?
例子:
<Grid.Resources>
<Style x:Key="myStyle1" TargetType="{x:Type TextBlock}">
<Setter Property="Background" Value="Blue"></Setter>
</Style>
</Grid.Resources>
<StackPanel>
<TextBlock Style="{DynamicResource myStyle1}">DynamicResource exists</TextBlock>
<TextBlock Style="{DynamicResource myStyle3}">DynamicResource does not exist</TextBlock>
</StackPanel>
如何在运行时通知我 myStyle3 不存在?
提前致谢!
【问题讨论】:
-
您是否仍在使用 WPF Inspector 作为发现任何丢失的动态资源的首选选项?遗憾的是,正如另一位用户 here 所报告的那样,WPF Inspector 为我崩溃了,所以我正在检查您是否找到了任何其他可行的选项(我没有发现 Snoop 对这个问题有帮助)。
-
刚刚测试过,它对我来说仍然可以正常工作。 WPF Inspector 0.9.9,我正在附加到从 Visual Studio 2012 运行的应用程序。
标签: wpf xaml resourcedictionary