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 :

[C#][xaml] drag and drop entre 2 canvas


Sujet :

Dotnet

  1. #1
    Membre du Club
    Inscrit en
    Juin 2007
    Messages
    75
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 75
    Points : 47
    Points
    47
    Par défaut [C#][xaml] drag and drop entre 2 canvas
    Bonjour,

    voila jusque-la j'arrivais à faire un drag and drop d'un rectangle sur un canvas en xaml avec les fonctions ci-dessous mais maintenant je voudrais faire un drag and drop d'un rectangle entre 2 canvas (le passer d'un canvas à un autre ) mais mes fonctions ne fonctionnent pas, elles me bougent mes rectangles un peu n'importe comment donc je voulais savoir si quelqu'un voyait ce qui n'allait pas dans mes fonctions.

    merci pour vos conseils

    mat
    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
     
    public void rectEvenement_MouseMove(object sender, MouseEventArgs e)
            {
                if (e.LeftButton == MouseButtonState.Pressed)
                {
                    DragDropEffects effects;
                    DataObject data = new DataObject();
                    data.SetData(typeof(UIElement), sender);
                    effects = DragDrop.DoDragDrop(canvasJour, data,          DragDropEffects.Move);
                }
            }
     
     
           public void canvasJour_DragEnter(object sender, DragEventArgs e)
           {
                if (e.Data.GetDataPresent(typeof(UIElement)))
                {
                    e.Effects = DragDropEffects.Move;
                }
                else
                {
                    e.Effects = DragDropEffects.None;
                }
            }
     
            //on bouge l'élément sur le canvas
            public void canvasJour_DragOver(object sender, DragEventArgs e)
            {
                if (e.Data.GetDataPresent(typeof(UIElement)))
                {
                    e.Effects = DragDropEffects.Move;
                }
                else
                {
                    e.Effects = DragDropEffects.None;
                }
            }
     
            //on repose l'élément à sa nouvelle place
            public void canvasJour_Drop(object sender, DragEventArgs e)
            {
                if (e.Data.GetDataPresent(typeof(UIElement)))
                {
                    Canvas.SetLeft((UIElement)e.Data.GetData(typeof(UIElement)), e.GetPosition(canvasJour).X);
                    Canvas.SetTop((UIElement)e.Data.GetData(typeof(UIElement)), e.GetPosition(canvasJour).Y);
                }
            }

  2. #2
    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
    Ca veut dire quoi quand tu dis:

    Citation Envoyé par matb33
    elles me bougent mes rectangles un peu n'importe comment

    ?

  3. #3
    Membre du Club
    Inscrit en
    Juin 2007
    Messages
    75
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 75
    Points : 47
    Points
    47
    Par défaut
    en fait pour situer le contexte j'ai 7 canvas les uns a coté des autres (pour les 7 jours de la semaine) avec des rectangles sur chacun des canvas (sauf le samedi et dimanche) et je viens de remarquer que quand je déplace (n'importe ou) un rectangle situé a la base au vendredi, ca me le décale de 2 jours par rapport a l'endroit ou il devrait etre replacé, le jeudi 3, le mercredi 4, etc...jusqu'au lundi donc je vois a peu près ou ca bug mais je n'arrive pas à résoudre ce problème....

    ca doit venir de ma fonction canvasJour_Drop je pense....

Discussions similaires

  1. [VBA-E]drag and drop entre deux listbox
    Par Yolak dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 14/06/2012, 14h37
  2. Drag and Drop entre 2 JTree
    Par Lebas dans le forum Composants
    Réponses: 1
    Dernier message: 07/02/2007, 11h59
  3. [Débutant(e)][VB.NET] Drag and drop entre 2 treeviews
    Par - Manuella Leray - dans le forum Windows Forms
    Réponses: 8
    Dernier message: 13/10/2005, 15h54
  4. [FLASH MX2004] Drag and drop entre deux List
    Par aldo-tlse dans le forum Flash
    Réponses: 15
    Dernier message: 24/09/2005, 01h10
  5. Drag and Drop entre listbox
    Par zwoke dans le forum C++Builder
    Réponses: 2
    Dernier message: 05/07/2004, 14h10

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