我想弄清楚如何从我的表单中分离我的业务逻辑。这是我第一次尝试这样做,但我想弄清楚如何处理类中多个表单的事件。我发现自己经常在每个表单类中反复编写相同的逻辑,并且我知道如何在winforms中完全分离出逻辑,这样我就可以在所有表单中重用这些方法。
所以基本上我在form1中有这个点击事件:
Private Sub btnSubmit_Click(sender As System.Object, e As System.EventArgs) Handles btnSubmit.Click
If String.IsNullOrWhiteSpace(txtPlanName.Text) OrElse _
String.IsNullOrWhiteSpace(txtPlanNumber.Text) Then
MessageBox.Show("All of the fields are not filled in!" + Environment.NewLine + _
Environment.NewLine + "Hit Ok and try again.")
Else
'do something
End If
End Sub
我想要做的是有一个类可以处理我所有表单的事件,所以我可以重用这段代码。理想情况下,我希望它的结构方式使我不必直接以任何形式编写代码。
Handles Form1.btnSubmit, Form2.btnEnter
这有可能实现吗?
答案 0 :(得分:1)
最好编写一个具有静态验证方法的公共类,并在用户界面中调用这些方法。
public class MyValidation
public Shared Function IsEmpty(ByVal data as String) as Boolean
if String.IsNullOrWhiteSpace(data) OrElse String.IsNullOrWhiteSpace(data) Then
return true
End If
return false
End Function
End Class