如果我取消某些内容,如何防止程序进入 try-catch 块?前任:
try{
int i=int.Parse(Interaction.InputBox("BlahBlahBlah"));
}
catch{
//error handling
return
}
但是如果我按“取消”或顶部的 X 怎么办?它进入try-catch,并认为这是一个例外。所以它会进行错误处理。我该如何阻止这个?
如果我取消某些内容,如何防止程序进入 try-catch 块?前任:
try{
int i=int.Parse(Interaction.InputBox("BlahBlahBlah"));
}
catch{
//error handling
return
}
但是如果我按“取消”或顶部的 X 怎么办?它进入try-catch,并认为这是一个例外。所以它会进行错误处理。我该如何阻止这个?
根据文档(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 );
这样,它将继续提示用户,直到输入有效的整数或他们取消对话框。