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 :

Drag & Drop de TabPage/Onglet


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de maVariable
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    164
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 164
    Par défaut Drag & Drop de TabPage/Onglet
    salut les gens

    J'utilise un TabControl, contenant des TabPage (des onglets quoi).
    j'aimerais pouvoir faire du drag & drop avec ces onglets, les échanger de place en live (comme dans firefox par ex), mais je ne trouve pas la méthode.

    J'ai trouvé de multiples solutions pour déplacer un onglet d'un TabControl à un autre par exemple, mais rien de concret sur ce que je veux réellement. Et je n'arrive pas à adapter ces exemples à mon cas, même en bidouillant avec les
    DoDragDrop, DragDrop, et autres DragEnter, etc...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    private void monTabControl_MouseMove(object sender, System.Windows.Forms.MouseEventArgs e) 
            { 
                if (e.Button == MouseButtons.Left) 
                {
                    this.monTabControl.DoDragDrop(this.monTabControl.SelectedTab, DragDropEffects.All);
                }...........................................
            }
    private void monTabControl_DragDrop(object sender, System.Windows.Forms.DragEventArgs e)
            {
                TabPage DropTab = (TabPage)(e.Data.GetData(typeof(TabPage)));
                this.monTabControl. .......... ........... .....
            }
    A la vue des messages trouvés, ca semble impossible nativement. Mais tous les messages que j'ai lus datent un peu, et ca m'étonne que ca soit si compliqué...

    Quelqu'un aurait il une piste svp?

  2. #2
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    C'est certainement possible mais ca va nécessiter sans doute pas mal de code.
    Sinon, je peux te suggérer l'utilisation des controles DockPanel (DLL WeifenLuo.WinFormsUI.Docking) qui font cela nativement.

  3. #3
    Membre confirmé Avatar de maVariable
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    164
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 164
    Par défaut
    Etrange que ca soit pas prévu... C'est pas que je soit fénéant, mais ca me parait assez commun...
    DockPanel à l'air pas mal, je vais voir si je peux partir la dessus, je reviendrai donner des nouvelles.
    merci bcp pour l'info

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par Bluedeep Voir le message
    Sinon, je peux te suggérer l'utilisation des controles DockPanel (DLL WeifenLuo.WinFormsUI.Docking) qui font cela nativement.
    +1, très bien ces contrôles !

    Citation Envoyé par maVariable Voir le message
    Etrange que ca soit pas prévu... C'est pas que je soit fénéant, mais ca me parait assez commun...
    Faut pas oublier que la plupart des contrôles Windows Forms sont juste des wrappers de contrôles Windows natifs... C'est le cas du TabControl, et ça date un peu, donc c'est pas vraiment étonnant que des fonctionnalités relativement récentes ne soient pas gérées

  5. #5
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Bon, je me demandais si c'était facilement faisable en héritant de TabControl... et on dirait bien que oui
    J'ai publié ça dans le forum Contribuez, ça servira sûrement à d'autres
    http://www.developpez.net/forums/d70...s-deplacables/

  6. #6
    Membre confirmé Avatar de maVariable
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    164
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 164
    Par défaut
    hé ben hé ben, bravo! C'est vraiment top comme idée, et ca marche nickel!
    Je courbe l'échine devant toi

    A mon avis beaucoup de monde vont apprécier ce geste, moi le premier!
    j'ai eu entre temps l'occas de regarder DockPanel, mais je trouve ta solution vraiment sympa, pratique, et simple, donc je vais partir la dessus. Je vais décortiquer ton code pour bien le comprendre, mais en attendant : mille merci à toi!

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

Discussions similaires

  1. Drag and drop "de l'extérieur"
    Par Invité dans le forum C++Builder
    Réponses: 12
    Dernier message: 31/03/2020, 10h10
  2. [Dojo] Drag and Drop d'onglets dans tabcontainer
    Par laminfodev dans le forum Bibliothèques & Frameworks
    Réponses: 7
    Dernier message: 29/12/2009, 09h50
  3. [JSP][DRAG AND DROP]
    Par hamed dans le forum Servlets/JSP
    Réponses: 7
    Dernier message: 23/01/2004, 17h36
  4. drag and drop
    Par jujuesteban dans le forum Composants VCL
    Réponses: 5
    Dernier message: 20/06/2003, 09h23

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