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 :

afficher selon un objectDataSource


Sujet :

ASP.NET

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 85
    Points : 39
    Points
    39
    Par défaut afficher selon un objectDataSource
    Bonjour à tous.

    Voilà mon problème :

    J'ai dans une webform un certain objectDataSource représentant une table de base de donnée et un formView dans lequel se trouve un linkButton.

    Je voudrais ne pas afficher ce linkButton si dans ma table en question il existe une certaine valeur.

    J'ai pensée à coder sa dans le pageload() du .cs de ma webForm.
    J'ai bien accés à ma formView dans le .cs mais pas à mon linkButton, et je ne sais pas comment vérifier à partir de mon object dataSource si il existe la donnée que je recherche.

    Je vous remercie beaucoup de bien vouloir m'aider.

  2. #2
    Membre expert
    Avatar de Pongten
    Homme Profil pro
    IT Analyst & Software Developer
    Inscrit en
    Juin 2002
    Messages
    1 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : IT Analyst & Software Developer
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 173
    Points : 3 543
    Points
    3 543
    Par défaut
    Regarde du côté de l'événement OnItemDataBound

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 85
    Points : 39
    Points
    39
    Par défaut
    Je n'ai pas compris ce que tu m'as demandé de faire.

    J'ai regardé dans le formView, le dataObjectSource et le linkButton et je n'ai pas trouvé de onItemDataBound.

    Par contre, mainteneant j'arrive à avoir accés à mon linkbutton avec la fonction findControl.

    Peux-tu être plus claire dans ce que tu m'as demandé de faire ?

    MERCI.

  4. #4
    Membre expert
    Avatar de Pongten
    Homme Profil pro
    IT Analyst & Software Developer
    Inscrit en
    Juin 2002
    Messages
    1 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : IT Analyst & Software Developer
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 173
    Points : 3 543
    Points
    3 543
    Par défaut
    Oui, c'était OnDataBound... as-tu au moins regardé de ce côté là ?

    Exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    protected override void OnLoad(EventArgs e)
        {
            base.OnLoad(e);
            MyFormView.DataBound += new EventHandler(MyFormView_DataBound);
        }
     
        void MyFormView_DataBound(object sender, EventArgs e)
        {
            object _valeur = ((sender as FormView).DataItem as DataRowView).Row["NomColonne"];
        }
    Où il faut bien évidemment remplacer NomColonne soit par le nom de ta colonne, soit par son numéro...

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 85
    Points : 39
    Points
    39
    Par défaut
    Sa ne fonctionne pas, voici le message d'erreur afiché :

    Message d'erreur du compilateur: CS0117: 'System.Web.UI.WebControls.ObjectDataSource' ne contient pas de définition pour 'DataBound'

    Erreur source:



    Ligne 49 : {
    Ligne 50 : base.OnLoad(e);
    Ligne 51 : odsPersonnePhysique.DataBound += new EventHandler(MyFormView_DataBound);
    Ligne 52 : }
    Ligne 53 :

    mais il n'y a pas un autre moyen de récupérer les donnés en utilisant l'objectDataSource dans le pageLoad() ?

    Merci d'avance.

  6. #6
    Membre expert
    Avatar de Pongten
    Homme Profil pro
    IT Analyst & Software Developer
    Inscrit en
    Juin 2002
    Messages
    1 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : IT Analyst & Software Developer
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 173
    Points : 3 543
    Points
    3 543
    Par défaut
    Ce n'est pas sur le datasource que tu dois faire ça, mais sur le formview

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 85
    Points : 39
    Points
    39
    Par défaut
    j'ai fait ce que tu m'as dit, sa compile mais je ne sais pas comment sa fonctionne.
    Si tu pouvais expliquer le code aussi ce serait sympat.

    Moi j'ai essayé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Label1.Text = fvPersonnePhysique_DataBound(object sender, EventArgs e);
    dans le pageLoad mais sa ne marche pas.

    MERCI.

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    262
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 262
    Points : 95
    Points
    95
    Par défaut
    As tu essayé de faire un truc du style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <linkbutton ..... visible='<%#mamethode()%' ....>...
    et dans ton cs tu ajoutes une méthode ou un acesseur qui renvoie un boolean de visibilité.
    Si ton traitement est cours tu peux meme le mettre directement à la place de l'appel de la méthode

  9. #9
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 85
    Points : 39
    Points
    39
    Par défaut
    Merci pour ta réponse snopims mais j'utilise déja ce type d'instruction dans le .aspx, cat je veut en réaliter l'afficher si 2 conditions sont remplies.

    La permière je la vérifie dans le .aspx car mon linkButton se trouve dans une formView qui est ratachée à un obectDataSource et la vérification se fait à partir de cet objectDataSource.

    La deuxième j'ai pensée la faire dans le .cs car elle doit ce faire à partir d'une autre table de la base de données.
    J'ai donc pensé à créer un nouvel objectDataSource relié à cette nouvelle table et faire la vérification dans le point .cs.

    Si tu as d'autre truc n'hésite pas, MERCI.

  10. #10
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 85
    Points : 39
    Points
    39
    Par défaut
    Si sa peut aider quelqu'un, voilà la réponse à ma question.

    pour afficher ou pas le linkButton, à la propriété Visible du linkButton je fait dans le .aspx: Visible='<%# voirLinkButton() %>' ; et dans le .cs, dans la fonction voirLinkButton() je vérifie les conditions en me connectant à ma base.

    Pour avoir accès à mes labels du formView, je créer un alias du genre :

    Label b = (Label)monFormView.FindControl("a");

    Voilà tout.

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 11/01/2010, 21h51
  2. [Joomla!] afficher selon authentification
    Par niceen dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 3
    Dernier message: 14/02/2008, 20h59
  3. Liste déroulante qui s'affiche selon condition
    Par jackfred dans le forum Excel
    Réponses: 7
    Dernier message: 26/06/2007, 10h04
  4. [PHP-JS] affiche selon liste déroulante
    Par cell dans le forum Langage
    Réponses: 10
    Dernier message: 10/12/2006, 22h39
  5. Réponses: 3
    Dernier message: 06/07/2006, 19h21

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