Avatar billede lajer Nybegynder
21. november 2005 - 18:41 Der er 1 kommentar og
1 løsning

Hvor blev e.Data af (DragEventArgs)

Hej.

Jeg har en picture box, der skal kunne dragges. Virker ok!

Men, i min DragEnter event har jeg lidt svært ved at få i Data'en fra DragEnter event'en.

Min picturebox ser sådan ud:

pb.Tag = slide;
pb.MouseMove += new MouseEventHandler(pb_MouseMove);

"slide" er en powerpoint slide. Denne bliver tilføjet i en anden tråd. Men det vel irrelevant.

Min MouseEnter event er påsat en class der nedarver fra Panel.

Sådan her:
this.DragEnter += new DragEventHandler(MoveIntoMarker_DragEnter);

Og DragEnter event'en:
private void MoveIntoMarker_DragEnter(object sender, DragEventArgs e)
{
    // Check wether the drag is legit
    if (e.Data.GetDataPresent(typeof(PowerPoint.Slide)))
    {
        PowerPoint.Slide slide = (PowerPoint.Slide)e.Data.GetData(typeof(PowerPoint.Slide));

        if (slide != null)
        {
            e.Effect = e.AllowedEffect;

            // Show the filler
            pnlFiller.BackColor = System.Drawing.Color.Black;
        }
        e.Effect = e.AllowedEffect;
    }
}

Som jeg har skrevet i min kommentar i koden - så mener den ikke at den skal komme ind i min if statement.


Problemet er (for at komme til sagens kerne) - at e.Data i følge stack tracen, fint indeholder et System.__ComObject (som er powerpoint sliden) - men jeg kan ikke fange det. "e.Data.GetDataPresent(typeof(PowerPoint.Slide))" retunere false.

Hvad gør jeg galt her??
Avatar billede lajer Nybegynder
21. november 2005 - 18:43 #1
Jeg vil lige sige for god ordens skyld - at det ikke er fordi at .tag ikke er tilføjet til pictureboxen, når jeg begynder at dragge.

Den del kører i en seperat tråd - men denne tråd er for længst færdig, når jeg går igang med at dragge.
Avatar billede lajer Nybegynder
21. november 2005 - 20:24 #2
Løste den med et mindre hack.

Jeg sender nu hele PictureBox'en - i stedet for bare sliden, og snupper den tag. Var ikke helt det jeg ville, men der er vel også grænser for hvor meget man gider at debugge på sådan noget ;-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester