try-catch块

时间:2016-10-04 18:26:57

标签: c# .net visual-studio exception-handling try-catch

我正试图抓住System.Windows.Automation.ElementNotAvailableException但是当异常发生时,visual studio仍然会抛出它。为什么以及如何解决此问题? 我在VS上的异常设置( Ctrl + Alt + D + E 上查找了System.Windows.Automation.ElementNotAvailableException 2015年社区)并且不检查该类型。

try-catch块看起来像这样:

try
{
    appElement = AutomationElement.RootElement.FindFirst(TreeScope.Children, condition);
}
catch(ElementNotAvailableException)
{
    appElement = null;
}

2 个答案:

答案 0 :(得分:1)

我找到了解决方案。我去了工具 - >选项 - >调试 - >一般 - >取消选中“跨越appDomain或托管/本地边界(仅限托管)选项时中断”。

它按预期工作。

答案 1 :(得分:0)

查看关于异常处理的这篇文章。

How using try catch for exception handling is best practice

另外,请考虑在当前catch块之后添加一个通用异常catch块。除了当前catch块的特定异常错误之外,这将捕获其他错误。

catch(Exception ex)
{
  // exception handling and/or display
}