首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Try-Catch未知行为

Try-Catch未知行为
EN

Stack Overflow用户
提问于 2011-08-19 20:59:29
回答 1查看 363关注 0票数 2

我目前正在学习一本关于如何在运行时将xaml代码转换为对象的书。

我有以下代码:

代码语言:javascript
复制
try
{
    ctrl = XamlReader.Load(xaml) as UserControl;
}
catch (Exception exc)
{
    OnXamlResult(new XamlCruncherEventArgs(exc.Message)); return;
}

密码不是我的,我从书上拿的。

问题是try-catch不能正常工作,至少据我所知是这样。在调试过程中,程序会在到达以下行时停止:

代码语言:javascript
复制
ctrl = XamlReader.Load(xaml) as UserControl;

而不捕获异常。

我做错了什么,或者我该如何解决这个问题?

"xaml“是一个字符串。它是从文本框中取出的,如果用户输入的xaml是正确的,程序应该将xaml代码转换成对象,否则它应该显示相应的错误。

关于程序的反应,我可以说debug停止了(它返回到visual studio指出错误),并且它的行为不像进入无限循环。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-08-19 21:02:23

可能是调试器在异常发生时中断了。在catch和F5中放置一个断点以继续,它应该继续并命中您的断点。

我所说的“中断”并不意味着它失败了,我的意思是它会在异常的违规行上暂停应用程序的执行,所以在这种情况下这是一件好事。

如果您使用的是Visual Studio,则可以启用/禁用此“异常中断”行为:

  • 调试->异常...(Ctrl + Alt +E)
  • 公共语言运行时异常,请根据需要选中右侧的框。

至于异常本身,除非它专门用于显示异常,否则它很可能在加载所提供的XAML字符串时遇到问题。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7121943

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档