You don't really need a try-catch block. Since you have captured the fields in your local variables then you can perform the validation on them.
if (String.IsNullOrEmpty(fName)) {
// handle empty string input
}
if (ContainsNumbers(fName)) {
// handle invalid input
}
private bool ContainsNumbers(string str) {
...
}