2

各曜日のタブ ページを持つタブ コントロールを含む時間入力フォームがあります。このコントロール内には、さまざまなテキスト ボックス/ラベルをまとめたテーブル レイアウト パネルがあります。曜日ごとに、同様の方法で入力に名前が付けられます。

txtMonWorkHours
txtMonPTOHours
txtMonOTHours
txtTuesWorkHours
txtTuesPTOHours
txtTuesOTHours
...

私はADO.netを使用して、データベースからこれらすべての値をそれぞれのテキストボックスにロード/保存しています。

データ入力フォームの写真

私が今やろうとしているのは、エントリを検証する方法を提供することです (これは、次のような個々のイベントごとに完了しました:

Private Sub txtMonIn_Leave(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtMonIn.Leave
    ValidateTimeEntered(txtMonIn)
   End Sub

Private Sub txtMonIn_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtMonIn.TextChanged
    TransitionTextPreValidate(txtMonIn)
End Sub

私の質問は: 各メソッドを各テキスト ボックス イベントに個別に割り当てることなく、作成したメソッドを必要なすべてのテキスト ボックスに追加する方法はありますか?

4

1 に答える 1

2

イベントには複数のコントロールを処理する機能があります。そのため、「送信者」オブジェクトが渡されるため、誰がイベントを呼び出しているかがわかります。これを試して、サブの宣言の終わりに注意してください:

Private Sub txtWeekdayIn_Leave(ByVal sender As Object, ByVal e As System.EventArgs) Handles  txtMonIn.Leave, txtTueIn.Leave, txtWedIn.Leave
    ValidateTimeEntered(sender)
End Sub
于 2013-09-25T18:44:28.163 に答える