これは私が持っているシナリオです。私は検証イベントを使用しています。私が間違った値を導入した場合(私の検証イベントのロジックが間違っていると判断するため)、Tabキーを押したときにそのTextBoxからフォーカスを解放することはありませんが、それはクリックしたときにも行いません別のTextBox?他のTextBoxをクリックしたときに検証に失敗したTextBoxからフォーカスを解放する
私は、検証について何かが足りないのですか?もし私がフォーカス以上の自由を望んでいる場合、データを検証する別の方法を使用する必要がありますか、それを解放するクリックイベントを実装することはできますか?
この私が使用して、検証イベントは、例えば、名前(「ノンブル」)のためにされています
private void tbNombre_Validating(object sender, CancelEventArgs e)
{
if (!new Validator().ValidateWithRegex("^[a-zA-ZÁáÀàÉéÈèÍíÌìÓóÒòÚúÙùÑñüÜ ]{2,20}$", tbNombre.Text))
{
e.Cancel = true;
MessageBox.Show(
"El nombre debe estar formado por letras (longitud: 2 a 20 caracteres)",
"Error en nombre",
MessageBoxButtons.OK, MessageBoxIcon.Error);
tbNombre.Text = "";
}
else
{
_emp.Nombre = tbNombre.Text;
}
}
コードを投稿してください。 – sab669
私が持っているコードは、 'CancelEventArgs.Cancel'を間違った値に設定した場合にtrueに設定するメソッドの実装を検証するものです。 'TextBox'の' CausesValidation'プロパティはtrueです。何が正確に必要なのですか? – JD0001
テキストボックスのイベントハンドラ。 – sab669