在Windows Metro风格的应用程序中,有哪些技术可用于调试数据绑定问题?有没有像WPF和Silverlight应用程序那样的技术,如下所述:
编辑:我最初询问的是WinRT数据绑定调试技术,以便我可以解决Metro: Why is binding from XAML to a property defined in code-behind not working?中描述的问题。我最终找到a solution来解决这个问题,但是在尝试使用工作解决方案时,我没有在Visual Studio 11输出窗口中看到任何消息,因为我故意拼写错误的属性名称,以便找不到它。 WinRT应用程序似乎也没有PresentationTraceSources
。
答案 0 :(得分:9)
另一种可能的解决方案:
sealed partial class App : Application
{
public App()
{
this.InitializeComponent();
this.Suspending += OnSuspending;
DebugSettings.BindingFailed += OnDebugSettingsOnBindingFailed;
}
private void OnDebugSettingsOnBindingFailed(object sender, BindingFailedEventArgs args)
{
new MessageDialog(args.Message).ShowAsync();
}
...
}
原始来源:http://www.tozon.info/blog/post/2012/07/23/Debugging-WinRTXAML-bindings.aspx
答案 1 :(得分:6)
如果查看VS中的输出窗口,您将看到有关错误的数据绑定跟踪消息。您可以自动获得C ++应用程序和托管应用程序,您必须打开非托管调试才能看到它们。这是我们希望改进的领域,但是现在您可以打开它们并查看跟踪输出。
答案 2 :(得分:2)
在VS11 beta中,模板化项目提供了一种帮助调试绑定错误的方法。
答案 3 :(得分:1)
我总是使用即时窗口来跟踪绑定问题。
这是msdn所说的:
在某些设置配置中,第一次机会异常通知 显示在立即窗口中。
在立即窗口中切换第一次机会异常通知 在“视图”菜单上,单击“其他Windows”,然后单击“输出”。
右键单击“输出”窗口的文本区域,然后选择或 取消选择异常消息。
(事实上默认设置对于我来说在vs2010中没问题)
希望这可以提供帮助。