2016-08-01 65 views

回答

0

您可以在共享項目本身中創建一個自定義控件,該控件從圖像繼承,並支持單擊並在整個應用程序中使用它。

ClickableImage : Image 
{ 
     public ClickableImage() 
     { 
      Tapped += (sender, e) => 
      { 
       System.Diagnostics.Debug.WriteLine("Image clicked!"); 
      }; 
     } 
} 
+0

謝謝,這沒有竅門! – IWillByte

+1

使用http://stackoverflow.com/questions/6866347/lambda-anonymous-function-as-a-parameter,我能夠將函數作爲參數傳遞給Tapped方法。 – IWillByte

+0

如果您有改進,請發佈您自己的答案,這對他人也有幫助。 –

0

感謝Rohit's answer,我能創造我修改,以匿名函數作爲參數的自定義控件。這裏是代碼:

class ClickableImage : Image 
{ 
    private TapGestureRecognizer tapGestureRecognizer = new TapGestureRecognizer(); 

    public ClickableImage(Action action) 
    { 
     tapGestureRecognizer.Tapped += (s, e) => 
     { 
      System.Diagnostics.Debug.WriteLine("Image Clicked w/ Lambda"); 
      action(); 
     }; 

     GestureRecognizers.Add(tapGestureRecognizer); 
    } 
} 
相關問題