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

VB.NET Discussion :

[VB.net] Sourcegrid : connaître la cellule sous la souris


Sujet :

VB.NET

  1. #1
    Membre confirmé Avatar de Miles Raymond
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    189
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2005
    Messages : 189
    Par défaut [VB.net] Sourcegrid : connaître la cellule sous la souris
    Bonjour !

    Je travail avec le projet open source sourcegrid depuis pas mal de temps déjà, sur un programme en cours de développement. Dans les grandes lignes, même si c'est assez complexe à utiliser, c'est très puissant. Aujourd'hui, je suis en train de mettre en place un système permettant d'éditer ma grid, c'est à dire de réaliser des copier / couper / coller.

    Rien de bien compliqué. Seulement j'aimerais pouvoir implémenter un contextmenustrip sur mon grid, là encore c'est assez facile, mais j'aimerais, lorsque je fais un clic droit, sélectionné la cellule présente sous ma souris (par défaut seul le clic gauche permet de sélectionné une cellule), afin d'avoir ses coordonnées si je dois manipuler ses informations.

    J'ai donc créer un ContextMenuStrip contenant : Copier, Coller et Coller.
    Ensuite j'ai créer une class "gridsFactEvent" qui récupère l'index sous la souris comme tel :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Public Class gridsFactEvent
        Inherits SourceGrid.Cells.Controllers.ControllerBase
        Public pos as Integer
     
        Public Overrides Sub OnMouseEnter(ByVal sender As SourceGrid.CellContext, ByVal e As System.EventArgs)
            MyBase.OnMouseEnter(sender, e)
            pos = sender.Position.Row
        End Sub
    End Class
    Seulement je ne sais pas comment communiquer entre ma forme et ma class. J'aimerais récupérer la variable pos lorsque je fais un clic-droit mais pour le moment je galère, pour deux raisons.

    1) La form sur laquelle se trouve ma grid et depuis laquelle je vais gérer le contextmenustrip dispose d'un constructeur.
    2) Ma classe gridsFactEvent nécessit également un constructeur.

    Donc lorsque j'essaie de récupérer ma variable publique pos :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim gridFact as new gridsFactEvent
    Dim pos as Integer = gridFact.pos
    Comme il reconstruit ma classe, la variable pos est toujours égale à zéro. Même chose lorsque j'essaie d'accéder à une variable publique dans ma form, comme je suis obligé de l'appeler par un constructeur, la variable se réinitialise.

    Vous comprenez ? Y-a-t'il un moyen de contourner ce problème de constructeur ?

    Merci !

  2. #2
    Membre confirmé Avatar de Miles Raymond
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    189
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2005
    Messages : 189
    Par défaut
    Je cherche depuis 2h30 et je trouve une solution 3 secondes après avoir poster un thread ici. Moult-excuses. J'ai utiliser un tout bête grid.getPositionAtPoint...

    Bonne journée et merci.

Discussions similaires

  1. [VB.NET] SourceGrid et Fusionner cellules
    Par Bourbaky dans le forum Windows Forms
    Réponses: 4
    Dernier message: 19/10/2015, 02h52
  2. [VB.NET]SourceGrid et affectation de valeurs dans une String
    Par Bourbaky dans le forum Windows Forms
    Réponses: 1
    Dernier message: 01/03/2006, 20h41
  3. [VBA] Trouver l'adresse de la cellule sous le bouton
    Par ouskel'n'or dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 20/02/2006, 22h53
  4. Masquage de cellule sous Excel
    Par Igloobel dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 13/01/2006, 15h29
  5. Réponses: 5
    Dernier message: 07/01/2006, 16h55

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