Avatar billede orca Nybegynder
29. november 2003 - 17:20 Der er 1 løsning

Custom valideringskontrol

Hejsa.

Jeg har forsøgt at lave min egen valideringskontrol som nedarver fra typen BaseValidator. Det fungerer dog ikke helt som jeg havde forventet.

Koden er her:

    public class MyValidator : BaseValidator
    {
        private TextBox _textctrl;

        public MyValidator()
        {
            base.EnableClientScript = false;
        }

        protected override bool ControlPropertiesValid()
        {
            Control ctrl = FindControl(ControlToValidate);
     
            if (ctrl != null)
            {
                _textctrl = (TextBox) ctrl;
                return (_textctrl != null); 
            }
            else
                return false;  // raise exception
        }

        protected override bool EvaluateIsValid()
        {
            // Check if the input string is a valid object name
            return Regex.IsMatch(_textctrl.Text, "^[a-zA-Z0-9_ -]+$");
        }
    }


Jeg har en dialog med en form i. I denne form er der et tekst felt (asp:textbox). Denne får sat sin værdi ved Page_Load(). Når valideringsmetoden EvaluateIsValid() bliver kaldt, så får den værdien som tekstfeltet fik sat ved Page_Load(), i stedet for den eventuelle nye værdi som måtte være indtastet.

Dvs, hvis der står en ikke-valid værdi fra start, så vil den aldrig validere fordi den hele tiden tester på den ikke-valide værdi.

Jeg har også forsøgt mig med "GetControlValidationValue()" metoden, men den resulterer i samme problem.

Kan i hjælpe mig? :)
Avatar billede orca Nybegynder
30. november 2003 - 01:36 #1
Havde glemt et tjek på IsPostBack i min Page_Load metode :S...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester