2016-06-13 1 views
0

캔버스에 이미지를 표시하기 위해 아래의 코드를 사용했지만 이미지를 길게 누르면 표시된 이미지를 삭제하고 싶습니다. 나는 contextmenu를 시도하지만 작동하지 않는다. 사람은캔버스에있는 이미지의 longpress에서 이미지를 삭제하고 싶습니다.

private void Stickers1_SelectionChanged(object sender, SelectionChangedEventArgs e) { 
    var selecteditem = e.AddedItems[0] as StickersImageListModel; 

    Stickers1.Visibility = Visibility.Collapsed;  

    // taking image from a list StickersImageListModel of images and bind with imageitem varaible  
    Image imageitem = new Image();  
    BitmapImage image = new BitmapImage(new System.Uri(selecteditem.Imageurl, UriKind.Absolute));  
    imageitem.Source = image; 

    //Add the images on canvas  
    my_canvas.Children.Add(imageitem);  
    imageitem.AllowDrop = true; 

    // DRag and drop the images on canvas 
    imageitem.ManipulationMode = ManipulationModes.All;  
    imageitem.ManipulationDelta += Drag_ManipulationDelta;  
    CompositeTransform ct = new CompositeTransform();  
    imageitem.RenderTransform = ct; 

    my_canvas.Visibility = Visibility.Visible;  
} 
+0

* "오류 메시지"는 오류 설명이 아닙니다. – IInspectable

+0

내 응용 프로그램에서 작동합니다 –

+0

이 코드에는 오류가 없지만 이미지를 longpress에 삭제하려고합니다 –

답변

0

당신은 이미지 Holding 이벤트를 사용할 수 있습니다 위해 내가 할 않거나 제대로 사용하려면 contextmenu 수있는 방법을 말해주십시오. 그러나 당신은 개최 이벤트가 데스크톱 애플 리케이션을 위해 해고되지 않는다는 것을 유의해야한다. 대신 RightTapped 이벤트를 사용해야한다. 모바일 앱만 타겟팅하는 경우 개최 이벤트를 사용할 수 있습니다.

// imageitem.RightTapped += Imageitem_RightTapped; 
      imageitem.Holding += Imageitem_Holding; 
      imageitem.IsRightTapEnabled = true; 
      imageitem.IsHoldingEnabled = true; 

private void Imageitem_RightTapped(object sender, RightTappedRoutedEventArgs e) 
     { 
      mycanvas.Children.Remove(sender as Image); 
     } 

     private void Imageitem_Holding(object sender, HoldingRoutedEventArgs e) 
     { 
      mycanvas.Children.Remove(sender as Image); 
     } 
+0

내 문제를 해결해 주셔서 감사합니다. –

관련 문제