IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

[C#] Validation d'une form


Sujet :

ASP.NET

  1. #1
    Membre régulier
    Inscrit en
    Avril 2004
    Messages
    85
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 85
    Points : 77
    Points
    77
    Par défaut [C#] Validation d'une form
    J'ai une erreur bien bizzare lorsque je valide ma form

    la premiere fois pas de probleme la validation s'effectue, mais la 2 iemes fois il s'en fou complètement et me dit que la form est valide alors que ce n'est pas le cas dutout


    quelqu un a déja eu ce probleme ????

  2. #2
    Membre habitué Avatar de Mourad
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 152
    Points : 161
    Points
    161
    Par défaut
    salut
    c'est un problème de PostBack.
    il faut faire une condition
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if(!IsPostBack )
    {
        TonTraitement(); 
    }
    dans le PageLoad();

  3. #3
    Membre régulier
    Inscrit en
    Avril 2004
    Messages
    85
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 85
    Points : 77
    Points
    77
    Par défaut
    il n'y a simplement rien dans mon page load
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
     
    using System;
    using System.Collections;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Web;
    using System.Web.SessionState;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.HtmlControls;
    using System.Text.RegularExpressions;
     
    namespace WebApplication1
    {
    	/// <summary>
    	/// Summary description for WebForm4.
    	/// </summary>
    	public class WebForm4 : System.Web.UI.Page
    	{
    		protected System.Web.UI.WebControls.Button Button1;
    		protected System.Web.UI.WebControls.TextBox InstalledDateTextBox;
    		protected System.Web.UI.WebControls.Label InstalledDateLabel;
    		protected System.Web.UI.WebControls.ValidationSummary ValidationSummary1;
    		protected System.Web.UI.WebControls.CustomValidator CustomValidator1;
     
    		private void Page_Load(object sender, System.EventArgs e)
    		{
    			// Put user code to initialize the page here
    		}
     
    			private void InitializeComponent()
    		{    
    			this.CustomValidator1.ServerValidate += new System.Web.UI.WebControls.ServerValidateEventHandler(this.CustomValidator1_ServerValidate);
    			this.Load += new System.EventHandler(this.Page_Load);
     
    		}
     
    		private void CustomValidator1_ServerValidate(object source, System.Web.UI.WebControls.ServerValidateEventArgs args)
    		{
    			if(Regex.Match(InstalledDateTextBox.Text,"^[0-9]{1,2}/[0-9]{1,2}/([0-9]{4})$").Success)
    			{
    				try
    				{
    					DateTime myDateTime = DateTime.Parse(InstalledDateTextBox.Text);
    					String bla = myDateTime.ToString();
    					bla.ToString();
    				}
    				catch
    				{
    					CustomValidator cus = (CustomValidator)source;
    					cus.ErrorMessage= InstalledDateLabel.Text;
    					InstalledDateLabel.ForeColor=System.Drawing.Color.Red;
    					cus.Visible=false;
     
    					ValidationSummary1.HeaderText="You must enter a value in the following fields:";
     
    					args.IsValid=false;
    				}
    			}
    			else
    			{
    				CustomValidator cus = (CustomValidator)source;
    				cus.ErrorMessage= InstalledDateLabel.Text;
    				InstalledDateLabel.ForeColor=System.Drawing.Color.Red;
    				cus.Visible=false;
     
    				ValidationSummary1.HeaderText="You must enter a value in the following fields:";
     
    				args.IsValid=false;
    			}
     
    		}
    	}
    }
    la premiere fois l'événement est généré mais la deuxieme fois il ne se passe rien !!!!
    :

  4. #4
    Membre régulier
    Inscrit en
    Avril 2004
    Messages
    85
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 85
    Points : 77
    Points
    77
    Par défaut
    :trouve:

    l'erreur provenait de ceci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    cus.Visible=false;
    qui déactivait la validation. Je l'utilisais en pensant qu'il était utilisé pour simplement caché le composant.[/code]

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [1.x] Afficher les erreurs de validation d'un form dans une modalbox
    Par phpestpuissant dans le forum Symfony
    Réponses: 1
    Dernier message: 12/12/2012, 12h44
  2. Réponses: 2
    Dernier message: 06/04/2012, 14h49
  3. [VB6] [Excel] Feuille dans une form, sans excel installé
    Par ro2v dans le forum Installation, Déploiement et Sécurité
    Réponses: 3
    Dernier message: 05/05/2010, 12h45
  4. [VB.net][VS2005] Validation d'une form avec errorProvider
    Par WriteLN dans le forum Windows Forms
    Réponses: 6
    Dernier message: 12/05/2006, 13h02
  5. Réponses: 7
    Dernier message: 21/02/2006, 13h14

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo