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

C# Discussion :

[C#] Utilisation d'une variable à partir d'une chaine de car


Sujet :

C#

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 38
    Points : 24
    Points
    24
    Par défaut [C#] Utilisation d'une variable à partir d'une chaine de car
    Bonjour,

    Je recupere dans une chaine un nom de variable: par ex datagrid_1_2

    J'aimerais maintenant appliquer des méthodes à ce datagrid_1_2 mais je ne vois pas comment faire!
    (par ex pouvoir faire datagrid_1_2.Visible = true)


    J'ai cherché un peu dans les faqs et sur le forum mais j'ai rien trouvé de semblable

    Merci d'avance pour votre aide

    Gaël

  2. #2
    Membre expérimenté
    Avatar de freddyboy
    Homme Profil pro
    Architecte technique
    Inscrit en
    Novembre 2003
    Messages
    810
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Novembre 2003
    Messages : 810
    Points : 1 696
    Points
    1 696
    Par défaut Re: [C#] Utilisation d'une variable à partir d'une chaine
    Citation Envoyé par gael.mases
    Bonjour,

    Je recupere dans une chaine un nom de variable: par ex datagrid_1_2

    J'aimerais maintenant appliquer des méthodes à ce datagrid_1_2 mais je ne vois pas comment faire!
    (par ex pouvoir faire datagrid_1_2.Visible = true)


    J'ai cherché un peu dans les faqs et sur le forum mais j'ai rien trouvé de semblable

    Merci d'avance pour votre aide

    Gaël
    tu peux essayer avec ce lien : http://www.microsoft.com/france/msdn...pressions.html

    @+

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 38
    Points : 24
    Points
    24
    Par défaut Re: [C#] Utilisation d'une variable à partir d'une chaine
    Citation Envoyé par freddyboy
    Euh j'ai parcouru rapidement j'ai pas tout saisi
    ...je regarderai + en profondeur demain j'aurai peut etre le cerveau plus reposé

  4. #4
    Expert éminent
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 64
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Points : 7 879
    Points
    7 879
    Par défaut Re: [C#] Utilisation d'une variable à partir d'une chaine de
    Citation Envoyé par gael.mases
    Bonjour,
    Je recupere dans une chaine un nom de variable: par ex datagrid_1_2
    J'aimerais maintenant appliquer des méthodes à ce datagrid_1_2 mais je ne vois pas comment faire!
    (par ex pouvoir faire datagrid_1_2.Visible = true)
    J'ai cherché un peu dans les faqs et sur le forum mais j'ai rien trouvé de semblable Merci d'avance pour votre aide
    Gaël
    Cela reste tout de m^me non souhaitable de proceder tel que tu le décris en POO
    utilises plutôt les propriéts de l'objet DataGrid
    ainsi si datagrid_1_2 désigne non pas l'adresse mémoire du DataGrid mais plutôt sa propriété DataGrid.Name alors tu pourras user du fait que ce contrôle fait partie d'une collection Form.Controls pour le retrouver en enumérant cette collection
    Exemple dans une Form MyForm
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    private Control GetControlByName(string name)
     {
        Control ctrl = null;
        foreach(Control c in this.Controls)
         {
            if(c.Name.Equals(name))
             {
               ctrl = c;
               break;
              }
         }
        return ctrl;
     }
    Utilisable par exemple pour toi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Control ctrl = GetControlByName("datagrid_1_2");
    if(c != null)
       c.Visible = true;

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 38
    Points : 24
    Points
    24
    Par défaut Re: [C#] Utilisation d'une variable à partir d'une chaine de
    Citation Envoyé par neguib
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
         if(c.Name.Equals(name))
    Je n'ai pas de méthode Name sur c (Control) qui me récupére le nom du Control

    ...mais de toute ca me recupere pas les objects Datagrid de ma page (les datagrids n'appartiennent pas a la liste des Controls ? ) , ton code boucle 3 fois et me trouve :
    _ 1 ResourceBasedLiteralControl
    _ 1 HtmlForm (me renvoit Form1 si j'utilise c.Id.ToString() )
    _ 1 LiteralControl

    Merci si tu as d'autres infos a m'apporter

  6. #6
    Expert éminent
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 64
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Points : 7 879
    Points
    7 879
    Par défaut
    evidemment si tu nous met du Web sur ce forum on va avoir du mal à ce comprndre, le forum concerné est juste à côté penses -y la prochaine fois
    un responsable va certainement deplacer ton post pour que tu reçoivent une réponse plus judicieuse
    Sinon il me semble d'ailleurs que le principe est plus simple en Web puisque tu dois disposer de la méthode FindControl nativement sur la Page

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 38
    Points : 24
    Points
    24
    Par défaut
    Citation Envoyé par neguib
    evidemment si tu nous met du Web sur ce forum on va avoir du mal à ce comprndre, le forum concerné est juste à côté penses -y la prochaine fois
    un responsable va certainement deplacer ton post pour que tu reçoivent une réponse plus judicieuse
    Sinon il me semble d'ailleurs que le principe est plus simple en Web puisque tu dois disposer de la méthode FindControl nativement sur la Page
    Autant pour moi j'avais pas vu qu'il y avait un sous forum que pour l'asp.net !
    désolé ...et merci d'avance pour l'administrateur qui deplacera mon sujet dans le sous forum adapté

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 38
    Points : 24
    Points
    24
    Par défaut
    Résolu avec la méthode FindControl.

    Merci

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 13/09/2007, 11h34
  2. Réponses: 2
    Dernier message: 20/07/2007, 16h17
  3. Réponses: 4
    Dernier message: 31/08/2006, 15h31
  4. Réponses: 2
    Dernier message: 29/06/2006, 13h58
  5. Exécuter une requête à partir d'une variable
    Par Poussy-Puce dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 16/03/2006, 14h15

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