如何阻止例外

时间:2013-11-09 00:35:51

标签: c# winforms error-handling

如果取消某些内容,如何阻止程序进入try-catch块? 例如:

try{
  int i=int.Parse(Interaction.InputBox("BlahBlahBlah"));
}
catch{
  //error handling
  return
}

但是如果按“取消”或顶部的X怎么办?它转到try-catch,并认为这是一个例外。所以它做错误处理。我该如何阻止它?

1 个答案:

答案 0 :(得分:3)

根据文档(http://msdn.microsoft.com/en-us/library/microsoft.visualbasic.interaction.inputbox(v=vs.110).aspx),如果用户取消,则返回空字符串。

你会想要这个:

do {
    String text = Interaction.InputBox("Enter a number");
    if( text == "" ) return -1;
    Int32 number;
    if( Int32.TryParse( text, out number ) ) return number;
} while( true );

这样它会一直提示用户,直到输入有效的整数或取消对话框。