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??
