1
這應該是一個簡單的問題來解決,因爲它使用了我用FooControl解決我最後一個問題的相同方法(見下文)。驗證器在複合控件內的回發消失
基本上,我想添加一個派生的驗證器,我做了這個複合控制。它工作正常,但在回發它只是消失在標記中,使我認爲它失去了它的ViewState。
我可能在實例化它時做了一些錯誤,但我試過只設置ControlToValidate,移動東西,沒有任何效果。
我提供了一些周圍的代碼,看看有什麼工作,然後什麼不是。
Private FooControl As IFooControl
Private Validator As MyValidator
Protected Overrides Sub CreateChildControls()
FooControl = FooControlProvider.CreateFooControl(blah)
Me.Controls.Add(FooControl.RetrieveControl())
' Begin Not Working
Validator = New MyValidator()
Me.Controls.Add(Validator)
Validator.ID = "MyValidatorID"
Validator.ControlToValidate = FooControl.ID
Validator.IsRequired = True ' Custom property
Validator.ErrorMessage = "Please select an answer"
' End Not Working
If Not DataSource Is Nothing Then
FooControlProvider.AssignDataSource(DataSource, FooControl)
End If
End Sub
在調試中,CreateChildControls在PostBack上被調用嗎? – BigBlondeViking 2009-07-17 19:58:42