Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我收到了来自生产用户的异常报告,该报告源自 IValueConverter 的“Convert”方法。我无法重现此问题。这个特殊的转换器在我们的整个应用程序中使用。我希望能够将异常处理放入转换器中,以便在问题再次发生时捕获问题的正确上下文。从转换器的角度来看,如果没有专门将一些上下文值作为 Convert 方法参数的一部分传递,是否可以知道从哪里访问该转换器?它专门用于发生异常的哪个 xaml 文件?
为了解决这个问题,我建议您在ConverterParameter每次使用转换器时传递唯一性,例如,如果您使用转换器在 View1 中绑定 ContentControl 的内容,您可以执行以下操作:
ConverterParameter
Content = {Binding Converter={StaticResource BensConvereter}, ConverterParameter = "View1ContenControl"
在异常处理代码中,您可以记录此转换器参数。每当转换器失败时,您将获得哪个视图和哪个控件绑定使转换器失败的日志。