2010-01-16 62 views
0

我有一个Windows窗体的桌面应用程序,有7个字段,如何验证表格

我怎么能提交按钮,直到表单验证?

我知道我可以在用户点击按钮时验证表单,但是如果我禁用了按钮,那么调用我的验证方法的最佳方式是什么?

使用C#表达2008年

+0

想想你使之成为自己@Alex困难。为什么不单单在提交按钮被点击时验证表单数据,如果失败则取消提交并向用户提供一些反馈为什么不能提交。 – David 2010-01-16 11:03:40

+0

它是我的家庭作业。 只需按照指示开球。 虽然我认为禁用按钮,直到字段被正确填写更好。 – Alex 2010-01-16 12:46:58

回答

0

您始终可以从所有7个控件的更改事件中调用验证方法。如果您已将控件绑定到某个数据源,则数据源shuld会有一个OnUpdated事件。

private void TextBox1_Changed(object sender, EventArgs e) 
{ 
Validate(); 
} 

private void ComboBox2_Changed(object sender, EventArgs e) 
{ 
Validate(); 
} 

private void Validate() 
{ 
if(ValidationOk()) 
{ 
    Button1.Enabled = true; 
} 
else 
{ 
    Button1.Enabled = false; 
} 

} 

或许:

private void Validate() 
{ 
Button1.Enabled = ValidationOk(); 
} 
+0

Button1.Enabled = false;每次都会执行? – Shoban 2010-01-16 10:23:44

+0

你会怎么做? – magnus 2010-01-16 10:26:26

+0

@ Thanks magnus,这就是我现在正在处理的内容, 有趣的是,如何偷看评论,但没有自己的答案。 无论如何,你必须添加一个其他的权利/ 现在我必须让验证方法正常工作。 – Alex 2010-01-16 10:33:14

0
+0

hmm。但它确实只显示一个字段,而不是如何将所有字段验证连接到启用按钮。] – Alex 2010-01-16 10:40:56