我有一個列表視圖在我放置datapager如下。 我正在使用SQl數據源並將記錄綁定到ListView。在列表視圖中的數據尋呼機問題
asp:ListView runat="server" ID="ListView1" DataKeyNames="ProductId,GameName" DataSourceID="GameTable" OnItemCommand="On_Select_Item"
和DataPager的在LayoutTemplate模板
而在項目模板,我放置一個按鈕,點擊時,它調用其中我試圖獲取DatakeyName值的方法。當pager被給出時,它在第一頁中工作正常,但是當移動到尋呼機中的其他頁面時,它引發了一個異常。 下面是按鈕點擊代碼,
protected void On_Select_Item(object sender, ListViewCommandEventArgs e)
{
if (String.Equals(e.CommandName, "AddtoCart"))
{
//checks if the user is logged in
if (User.Identity.IsAuthenticated)
{
ListViewDataItem dataItem = (ListViewDataItem)e.Item;
DropDownList dl = e.Item.FindControl("DropDownList") as DropDownList;
String val="";
if (dl != null)
{
val = dl.SelectedValue; //Get the selected value from DropDownList
}
String price = Convert.ToString(e.CommandArgument).Trim(); //Get the price for the selected game.
-------------異常是在低於線拋出---------
string ProductId =
ListView1.DataKeys[dataItem.DataItemIndex]["ProductId"].ToString(); //Product Id for the selected game.
string GameName = ListView1.DataKeys[dataItem.DataItemIndex]["GameName"].ToString(); //gamename
...............................
.............................
}
什麼是例外? – Melanie 2013-04-08 18:44:27
使用DataPager的任何特定原因?您可以使用gridview/listview中的inbuild分頁和排序功能,以及使用sqldatasource(作爲網格的數據提供程序),無需手動執行分頁,它會自動處理頁面索引頁面。 – Vishal 2013-04-08 18:46:32
我得到的異常是ArgumentOutOfRange和我正在使用datapager,因爲查詢返回多個記錄,我會檢查內置的分頁,並返回給你 – 2013-04-08 18:49:02