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

Windows Forms Discussion :

[VB.NET] Génération automatique Property (getter / setter)


Sujet :

Windows Forms

  1. #1
    Membre régulier

    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    165
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2003
    Messages : 165
    Points : 95
    Points
    95
    Par défaut [VB.NET] Génération automatique Property (getter / setter)
    Bonjour,

    Peut-on générer automatiquement les assesseurs en VB.Net comme sur (JBuilder par exemple), de façon à ne pas écrire tous les getters setters pour chaque variable de classe.

    Merci

    Mélanie

  2. #2
    Membre chevronné
    Avatar de Piotrek
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 869
    Points : 1 904
    Points
    1 904
    Par défaut
    on peut faire ca facilement avec les macros:
    http://weblogs.asp.net/jan/archive/2003/04/29/6168.aspx

  3. #3
    Membre chevronné
    Avatar de Piotrek
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 869
    Points : 1 904
    Points
    1 904
    Par défaut
    la voila corrigee

    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
     
    Imports System.Text.RegularExpressions
    Imports EnvDTE
    Imports System.Diagnostics
     
        Sub ConvertProperties()
            DTE.UndoContext.Open("ConvertProperties")
            Try
                Dim txt As TextSelection
                txt = DTE.ActiveDocument.Selection
     
                Dim line, originalCode As String
                originalCode = txt.Text
     
                Dim lines() As String
                lines = Split(originalCode, vbLf)
                Dim variableName As String
                Dim publicName As String
                Dim dataType As String
                Dim propertyProcedure As String
     
                Dim r As Regex
                r = New Regex( _
                "(Dim|Private)\s*(?<varname>\S*)\s*As\s*(?<typename>\S*)", _
                RegexOptions.IgnoreCase Or RegexOptions.ExplicitCapture)
     
                For Each line In lines
                    line = line.Trim
                    If Not line = "" Then
                        Dim mtch As Match
                        mtch = r.Match(line)
                        If mtch.Success Then
                            variableName = mtch.Groups("varname").Value.Trim
                            dataType = mtch.Groups("typename").Value.Trim
                            publicName = variableName.Substring(1)
     
                            propertyProcedure = _
                                String.Format("{0}Public Property {1} As {2}{0}" _
                                    & "    Get{0}" _
                                    & "        Return {3}{0}" _
                                    & "    End Get{0}" _
                                    & "    Set(ByVal Value As {2}){0}" _
                                    & "        {3} = Value{0}" _
                                    & "    End Set{0}" _
                                    & "End Property", vbCrLf, publicName, _
                                    dataType, variableName)
     
                            txt.Insert(vbCrLf & propertyProcedure, _
                                vsInsertFlags.vsInsertFlagsInsertAtEnd)
                        End If
     
                    End If
                Next
                txt.SmartFormat()
            Catch
                'don't do anything
                'but I don't want to see an error!
            End Try
            DTE.UndoContext.Close()
        End Sub

  4. #4
    Membre régulier

    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    165
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2003
    Messages : 165
    Points : 95
    Points
    95
    Par défaut les deux premières lettres
    super merci

    il fonctionne bien mais il jette les deux permières lettres exemple si j'ai

    il fait :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Public Property lephon() As String
    ...

  5. #5
    Membre chevronné
    Avatar de Piotrek
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 869
    Points : 1 904
    Points
    1 904
    Par défaut
    Oui j'ai remarque aussi et j'avais corrige: tu as du copier le code avant

    maintenant c'est bon, ca venait juste de

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    publicName = variableName.Substring(2)

  6. #6
    Membre régulier

    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    165
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2003
    Messages : 165
    Points : 95
    Points
    95
    Par défaut merci
    un grand merci

    c est super t'es mon idole

  7. #7
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Points : 19 434
    Points
    19 434
    Par défaut
    Moi, j'utilsie ca sans pb :

    http://www.c-sharpcorner.com/Code/2003/Sept/vsPropertyGenerator.asp




    A+

  8. #8
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2015
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2015
    Messages : 6
    Points : 6
    Points
    6
    Par défaut
    pour chaque attribut fait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Public Property attribute As String
    ou pro et tabulation deux fois

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

Discussions similaires

  1. [Template] Changer la génération des getter/setter
    Par anthyme dans le forum NetBeans
    Réponses: 2
    Dernier message: 05/07/2007, 09h26
  2. Generation automatique des Getter et Setter
    Par VAPRO dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 23/03/2007, 12h11
  3. [NetBeans] generation automatique getters/setters
    Par kenito dans le forum NetBeans
    Réponses: 1
    Dernier message: 12/05/2006, 14h37
  4. [getters] génération automatique...
    Par phoebe dans le forum Eclipse Java
    Réponses: 3
    Dernier message: 04/10/2005, 17h43
  5. [Info]générer automatiquement les getters / setters
    Par lr dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 01/02/2005, 10h14

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