2012-05-31 20 views

回答

0

你應該確保它不是一個標題行,你看到DataItemnull

您可以通過if語句只是檢查是否DataItem不是null或者如果它是一個特定類型的使用將數據分配到Repeater封裝代碼做到這一點。

此外,您可以檢查ListItemType的項目如下所述:http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.repeater.itemdatabound.aspx或在這裏:ASP.Net repeater item.DataItem is null

然後,您應該可以通過訪問e.Item.DataItem對象訪問與ItemDataBound事件中每個項目相關的數據。

如果您希望從控件邊界調用另一個事件(即像您提到的按鈕點擊)訪問分配給中繼器的數據,則可以使用CommandArgument併爲每個項目分配適當的值,並處理ButtonCommand

1

在按鈕的CommandArgument中設置對象的ID。那麼在按鈕命令事件中,您可以從e.CommandArgument中訪問該ID。然後您可以查詢域/數據庫的數據。