2011-07-22 4 views
0

vb.netでパネル内のすべてのアイテムの検証をプログラムで無効にすることは可能ですか?パネル内のすべてのアイテムのバリデーションを無効にする

私はそれを理解できないようです。

私はパネル内のすべてのフィールドを無効にしましたが、依然としてページが送信時に検証されます。

この

は私が今持っているものです。

Public Sub DisableControls(ByVal parent As Control) 
    Dim cCon As Control 
    For Each cCon In parent.Controls 
     If (TypeOf cCon Is TextBox) Then 
      CType(cCon, TextBox).Enabled = False 
      CType(cCon, TextBox).CausesValidation = False 
     End If 
     If (TypeOf cCon Is DropDownList) Then 
      CType(cCon, DropDownList).Enabled = False 
      CType(cCon, DropDownList).CausesValidation = False 
     End If 
    Next 
End Sub 

はそれがうまくコントロールを無効にしますが、作品:(

答えて

1

CausesValidationまでの検証は自分のコントロールの動作を無効にしたときになるようにそのうちの1つがポストバックの原因となり、検証はスキップされます。

バリデータを無効にする必要があります。

+0

だらけ。ありがとうございます –

+0

あなたは大歓迎です。 –

関連する問題