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

Dotnet Discussion :

[VS 2005] ctype et type dynamique


Sujet :

Dotnet

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Janvier 2004
    Messages
    56
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 56
    Par défaut [VS 2005] ctype et type dynamique
    Bonjour à tous,

    J'ai une classe avec une propriété de type integer.

    D'un autre coté, la valeur que je récupère sur un textbox.

    Du coup pour affecter ma propriété, je suis obligé d'écrire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    maClasse.mapropriete = CType(monTxtBox.text, integer)
    Mais cela m'ennuie de dupliquer le type à la fois dans la description de la propriété et dans le ctype. Je préfèrerai caster mon objet en me basant sur le type de la propriété.

    J'ai donc essayé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ctype(montextBox,maClasse.maPropriete.gettype)
    Je sais que le code précédent ne marche pas, car il n'autorise pas de mettre un objet instancié dans la seconde partie du ctype.
    Si vous aviez une idée sur comment caster dynamiquement mon résultat.

    Merci d'avance

  2. #2
    Rédacteur
    Avatar de dev01
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    2 451
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 2 451
    Par défaut
    Salut.

    Ce que tu veux faire n'est pas possible.

    En effet tu souhaites inclure un parametre qui évaluer à l'exécution, alors que le CType est évaluer à la compilation.

  3. #3
    Membre averti
    Inscrit en
    Janvier 2004
    Messages
    56
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 56
    Par défaut
    Merci pour ta réponse ...
    C'est bien ce que je craignais

    Sinon, je regarde la méthode convert.ChangeType mais tous les types ne sont pas définis (notamment pour les classes de l'application). J'ai vu qu'il était possible de redéfinir les operateurs sur les types (Public Shared (Narrowing) Operator ) mais cela ne s'applique pas pour ChangeType.... Je ne sais pas comment compléter la classe car on ne peut pas en hériter ...

    Si vous avez des idées, je suis preneur.

    Merci d'avance

  4. #4
    Membre Expert Avatar de Guulh
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    2 160
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2007
    Messages : 2 160
    Par défaut
    Venant de C# et ne connaissant VB que via de vieilles réminiscence de Q-basic et GwBasic, je trouve ce post rigolo

    Surtout que du point de vue de framework, convertir un string en int n'est pas un cast, mais une conversion. VB le permet visiblement, mais il doit en fait appeler un int.Parse ou un Convert.ToInt derrière.

Discussions similaires

  1. [VB.NET 2005]PROB evenement Webbrowser dynamique
    Par Rankyboy dans le forum Windows Forms
    Réponses: 2
    Dernier message: 12/01/2016, 15h07
  2. [Reporting Services 2005] Afficher des colonnes dynamiquement
    Par n.roussaly dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 26/03/2007, 10h10
  3. [VB.Net 2005]Declaration de type
    Par badrel dans le forum Windows Forms
    Réponses: 3
    Dernier message: 04/11/2006, 16h39
  4. [SQL Server 2005][SP] Procédure & SQL Dynamique
    Par softflower dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 23/02/2006, 11h28
  5. Réponses: 10
    Dernier message: 27/04/2005, 11h26

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