c#异常导致我的表单关闭

本文关键字:表单 我的 异常 | 更新日期: 2023-09-27 18:16:10

当我抛出FormatException时,表单似乎总是关闭。有没有一种方法可以让表单不关闭,这样我就可以在表单上执行操作?

的例子:

    int postcodeNumeriek = 0;
    if (int.TryParse(postcode.Text, out postcodeNumeriek) == false)
    {
        throw new FormatException("De postcode heeft een verkeerd formaat");
    }
    cmd.Parameters.AddWithValue("@naam", familienaam.Text);
    cmd.Parameters.AddWithValue("@voornaam", voornaam.Text);
    cmd.Parameters.AddWithValue("@straat", straat.Text);
    cmd.Parameters.AddWithValue("@nummer", nummer.Text);
    cmd.Parameters.AddWithValue("@bus", bus.Text);
    cmd.Parameters.AddWithValue("@postcode", postcode.Text);
    cmd.Parameters.AddWithValue("@gemeente", gemeente.Text);
    cmd.Parameters.AddWithValue("@telefoonnummer", telefoonnummer.Text);
    cmd.Parameters.AddWithValue("@btwnummer", btwNummer.Text);
    cmd.Parameters.AddWithValue("@nieuwsbrief", nieuwsbrief.Checked);
    cmd.Parameters.AddWithValue("@emailadres", emailAdres.Text);
    cmd.Parameters.AddWithValue("@klantnummer", klantID);
    cmd.ExecuteNonQuery();
    cmd = new SqlCeCommand("UPDATE Klanten SET Actief=0 WHERE ID='" + recordID + "'", Klantenbeheer.HuidigeDatabaseVerbinding);
    cmd.ExecuteNonQuery();
}
catch (FormatException e)
{
    postcode.Focus();
}

在本例中,我希望邮政编码在格式不正确时生成异常。发生这种情况时,表单关闭,因此postcode.Focus();不被执行

可能有但是不可见

c#异常导致我的表单关闭

int postcodeNumeriek = 0; if (int.TryParse(postcode.Text, out postcodeNumeriek) == false) { postcode.Text ="format postalcode incorrect"; }

在这种情况下,使用Try语句总是好的