Image
img2
'dan Image
img1
'a sürükleyip bırakmam gerekiyor. Bu, img1
üzerinde sürüklediğimde img2
'u kopyalamak istediğim anlamına gelir. Program başlatılıyor, ancak Image
img1
hedefine, Image
img2
'u sürükledikten sonra değişmiyor.Görüntü sürükle ve bırak (WPF Penceresi)
Bu sorunu çözmek için nasıl çözülür?
aşağıda Kodum:
XAML:
<Canvas Name="va">
<Image Name="img1" Height="100" Width="100" AllowDrop="True" Drop="img1_Drop" />
<Image Name="img2" Height="100" Width="100" Source="Resources/eye.bmp"
MouseLeftButtonDown="img2_MouseLeftButtonDown" AllowDrop="True" />
</Canvas>
C# kodu:
private void img2_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
Image image = e.Source as Image;
DataObject data = new DataObject(typeof(ImageSource), image.Source);
DragDrop.DoDragDrop(image, data, DragDropEffects.All);
}
private void img1_Drop(object sender, DragEventArgs e)
{
Image imageControl = (Image)sender;
if ((e.Data.GetData(typeof(ImageSource)) != null))
{
ImageSource image = e.Data.GetData(typeof(ImageSource)) as ImageSource;
imageControl = new Image() { Width = 100, Height = 100, Source = image };
img1 = imageControl;
}
}
Zihin:
yerine basitçe
img1
aitSource
özelliği atamak gerekir. –İşte güzel örnek https://www.strathweb.com/2012/06/drag-and-drop-files-to-wpf-application-and-asynchronously-upload-to-asp-net-web-api/ –