Tydligen blir det problem om man sätter enable/disable på en kontroll mitt i den sub man validerar. Det måste göras innan den sub'en körs.
Jag har en customvalidator som jag bara vill validera om jag läger till en ny användare. Alltså om en användare ska uppdateras ska kollen av hur många tillåtna användare kunden har inte köras, försökte med följande kod men då måste jag trycka på spara två gånger av någon oförklarlig anledning.
Sub validateUsers(ByVal sender As Object, ByVal args As ServerValidateEventArgs)
If Me.txtid.Text = "" Then
sender.Enabled = True
Dim myContactID As Integer
Dim myNumberOfUsers As Integer
Dim myCurrentNumberOfUsers As Integer
Dim myRenewalDate As DateTime
myCurrentNumberOfUsers = myutils.dbExecuteScalar("SELECT COUNT(*) FROM tblEmployees")
If (myCurrentNumberOfUsers >= myNumberOfUsers) Then
args.IsValid = False
sender.Visible = True
sender.ErrorMessage = err1
Exit Sub
End If
Else
' If updating a contact disable the uservalidator
sender.Enabled = False
End If
End Sub
Någon som förstår varför jag måste trycka på spara två gånger om jag ska uppdatera en användare, det verkar som att applikationen först sätter USerValidator får väl helt enkelt sätta args.isvalid till True istället för att oskadliggöra själva kontrollen.
////RED
Det fungerar inte det heller, när det handlar om att uppdatera så måste jag alltid trycka två gånger på knappen... blir tokig, förstår helt enkelt inte vad som är fel.
Av någon anledning får jag efter första trycket upp meddelandet at IsValid = False
