我正在使用Textbox_Validating事件来验证我的某个窗口表单上的文本框。
如果texbox的文本发生变化,我想验证文本框。所以我从textbox_Texchanged事件中调用了验证事件。但是,只要我按下一个键,它就会触发textchanged事件,从而触发text_Validating事件。 如果text属性由于按键而发生了变化,我想阻止对Text_Validating的调用。但是,如果有人协助txtbox.Text="asdf";
,我想在这种情况下触发验证事件。
private void txt8Ydere1_TextChanged(object sender, EventArgs e)
{
txt8Ydere1_Validating(sender,null);
}
答案 0 :(得分:1)
您可以通过执行此操作来阻止对验证事件的调用
txt8Ydere1.Validating-=txt8Ydere1_Validating;
将此代码放在 keydown,keyUp 事件......
中检查txtbox.Text equals "asdf"
如果是,您可以直接调用验证方法,而无需重新订阅活动:
txt8Ydere1_Validating(sender,null);
答案 1 :(得分:0)
我会将LostFocus事件用于文本框。您可以从该事件中运行验证。
有关详细信息,请参阅msdn。