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 :

remplacement d'un charactère dans un datagridviewer


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de thierry007
    Homme Profil pro
    Autodidacte
    Inscrit en
    Août 2006
    Messages
    876
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Autodidacte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2006
    Messages : 876
    Par défaut remplacement d'un charactère dans un datagridviewer
    Bonjour la communauté des dev

    Juste un chti problème

    Dans un datagridviewer, je souhaite controler les charactères entrés dans les cellules, a savoir si la personne tape sur le touche "." ( point ), remplacer directement celui-ci par une "," (virgule )
    Sa doit surement être c.. mais je ne vois pas
    PS: je suis sous VS2008

    Merci

  2. #2
    Membre éclairé

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    291
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 291
    Par défaut
    Salut,

    Je te propose d'interdire la saisie de "."
    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
     
        Private Sub dgvLstPleins_EditingControlShowing(ByVal sender As Object, ByVal e As DataGridViewEditingControlShowingEventArgs) Handles dgvLstPleins.EditingControlShowing
     
            Try
     
                If e.CellStyle.Alignment = DataGridViewContentAlignment.MiddleRight Then
                    AddHandler e.Control.KeyPress, AddressOf CheckCell
     
                Else
                    RemoveHandler e.Control.KeyPress, AddressOf CheckCell
                    RemoveHandler e.Control.KeyPress, AddressOf CheckCell
     
                End If
     
            Catch ex As Exception
     
            End Try
     
        End Sub
     
        Private Sub CheckCell(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs)
     
            Try
     
                Dim KeyAscii As Short
                KeyAscii = Asc(e.KeyChar)
     
                ' Récupérer le N° de la ligne sélectionnée
                Dim intNColonne As Integer
                intNColonne = Me.dgvLstPleins.CurrentCell.ColumnIndex
     
                Select Case Me.dgvLstPleins.Columns(intNColonne).Name
     
                    Case "Kilométrage"
                        Select Case e.KeyChar
     
                            Case "0" To "9", ControlChars.Back
                                Exit Sub
     
                            Case Else
                                e.Handled = True
     
                        End Select
     
                    Case "Quantité"
                        Select Case e.KeyChar
     
                            Case "0" To "9", ",", ControlChars.Back
                                Exit Sub
     
                            Case Else
                                e.Handled = True
     
                        End Select
     
                End Select
     
            Catch ex As Exception
     
            End Try
     
        End Sub
    @+

    Gdal

  3. #3
    Membre éprouvé Avatar de thierry007
    Homme Profil pro
    Autodidacte
    Inscrit en
    Août 2006
    Messages
    876
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Autodidacte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2006
    Messages : 876
    Par défaut
    Solution a garder pour une autre appli, mais le problème c'est que beaucoup de personne utilise le pavé num pour l'encodage de chiffre, donc par defaut le point du pavé numérique, c'est pour cela que je souhaite faire le remplacement auto du point par la virgule

    en VB6 y avait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     If KeyAscii = Asc(".") then KeyAscii = Asc(",")
    Et zoup

  4. #4
    Membre expérimenté
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    Juillet 2006
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 932
    Par défaut
    La solution proposée convient parfaitement.

    Il te suffit d'ajouter un cas où si c'est un ".", tu replaces par "," et le tour est joué.

    Griftou.

  5. #5
    Membre éprouvé Avatar de thierry007
    Homme Profil pro
    Autodidacte
    Inscrit en
    Août 2006
    Messages
    876
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Autodidacte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2006
    Messages : 876
    Par défaut
    Citation Envoyé par thierry007 Voir le message
    Solution a garder pour une autre appli, mais le problème c'est que beaucoup de personne utilise le pavé num pour l'encodage de chiffre, donc par defaut le point du pavé numérique, c'est pour cela que je souhaite faire le remplacement auto du point par la virgule

    en VB6 y avait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     If KeyAscii = Asc(".") then KeyAscii = Asc(",")
    Et zoup
    la j'ai la syntaxe en vb6, mais en .net ??

  6. #6
    Membre expérimenté
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    Juillet 2006
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 932
    Par défaut
    Ce n'est pas fort différent. Cherche un peu et tu trouveras ;-)

    Griftou.

Discussions similaires

  1. [VB + WORD] Remplacement d'un texte dans un signet
    Par mister3957 dans le forum VBA Word
    Réponses: 4
    Dernier message: 25/02/2014, 11h37
  2. Réponses: 6
    Dernier message: 06/01/2010, 14h48
  3. Recherche et remplacement d'un caractère dans Word
    Par faiglon dans le forum Access
    Réponses: 3
    Dernier message: 13/02/2006, 14h17
  4. WORD : remplacement d'un texte dans en-tête
    Par richard038 dans le forum Langage
    Réponses: 4
    Dernier message: 10/02/2006, 18h55
  5. [VS2005][VB.Net] Custom Format dans un DataGridView
    Par Vonotar dans le forum VB.NET
    Réponses: 10
    Dernier message: 22/11/2005, 08h15

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