2012-05-17 50 views
0

我正试图在WPF中为ImageControl实现DragAndDrop。我使用C#代码隐藏将图像添加到网格。如何使用DragAndDrop在屏幕四周移动图像

System.Windows.Controls.Image OldMan = new System.Windows.Controls.Image(); 
OldMan.Height=30; 
OldMan.Width=30; 
OldMan.Name="OldMan"; 
OldMan.Margin=new Thickness(100,100,0,0); 
OldMan.HorizontalAlignment=System.Windows.HorizontalAlignment.Left; 
OldMan.Stretch = Stretch.Fill; 
OldMan.VerticalAlignment = System.Windows.VerticalAlignment.Top; 
OldMan.Source= ConvertBitmap(Properties.Resources.Old1); 
OldMan.MouseDown += new MouseButtonEventHandler(OldMan_MouseDown); 
//PW is the name of my Grid 
PW.Children.Add(OldMan); 
PW.RegisterName(OldMan.Name, OldMan); 

这在MouseDown事件中添加图片到电网,和挂钩到MouseDown事件

void OldMan_MouseDown(object sender, MouseButtonEventArgs e) 
{ 
    System.Windows.Controls.Image img = (System.Windows.Controls.Image)sender; 
    DoDragDrop(.... //this doesn't exist so obviously I am missing something 
} 

所以我没有的DoDragDrop选项,所以我有什么选项

回答

2

有一个关于WPF教程书面记录,可能是有用的:

http://wpftutorial.net/DragAndDrop.html

它的基本原理是当他们按下鼠标时,记录起始点。然后当他们移动鼠标时(没有释放鼠标按钮),移动物体的量与移动鼠标的量相同。

相关问题