2013-10-24 67 views
0

我顯示文件列表如下:圖片名稱結合工作不

<Image Name="{Binding fileId}" Source="/Assets/icons/add.png" Grid.Row="0" Grid.RowSpan="3" Grid.Column="0" Tap="Image_Tap"> 

我試圖獲取圖像點擊事件的fileid值。但它的例外{System.NullReferenceException: Object reference not set to an instance of an object.}

請幫助。

回答

1

不是設置name屬性,而是將fileId分配給Tag屬性,並在點擊時檢索該屬性。

<Image Tag="{Binding fileId}" Source="/Assets/icons/add.png" Grid.Row="0" Grid.RowSpan="3" Grid.Column="0" Tap="Image_Tap"> 

當然,如果你要綁定一個集合,你可能會使用帶有綁定ItemsSource的GridView或ListView控件。在這種情況下,可以通過訪問圖像的DataContext來獲取單個元素綁定到的完整對象。

Image myTappedImage = (Image)sender; 
MyImgInfo mySourceObject = (MyImgInfo)(myTappedImage.DataContext); 
+0

謝謝,還是我不知道爲什麼名稱綁定不工作。真奇怪。 – Priti