日期:2014-05-18  浏览次数:20550 次

点击最高的10行绑定到DataGrid,怎么在每行前面显示1,2,3...10?
从数据库里取出点击最高的10行,绑定到DataGrid上了,显示效果为:
aaaaaaaaaaa
bbbbbbbb
aaaaaaaaaaa
bbbbbbbb
aaaaaaaaaaa
bbbbbbbb
aaaaaaaaaaa
bbbbbbbb
aaaaaaaaaaa
bbbbbbbb
如何在行前面加入
1   aaaaaaaaaaa
2   bbbbbbbb
3   aaaaaaaaaaa
4   bbbbbbbb
5   aaaaaaaaaaa
6   bbbbbbbb
7   aaaaaaaaaaa
8   bbbbbbbb
9   aaaaaaaaaaa
10   bbbbbbbb

------解决方案--------------------
private void dgData_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if(e.Item.ItemType==ListItemType.Item||e.Item.ItemType==ListItemType.AlternatingItem)
{
(e.Item.FindControl( "lblNo ") as Label).Text= e.Item.ItemIndex+1;
}
}

lblNo 为模版列中的文本控件
------解决方案--------------------
加一模版列,绑定内容如下

<columns>
<asp:templatecolumn>
<itemtemplate>
<%# Container.DataItemIndex + 1 %>
</itemtemplate>
<asp:templatecolumn>

------解决方案--------------------
if(e.Item.ItemIndex != -1)
{
int ID = e.Item.ItemIndex + 1;
e.Item.Cells[1].Text = (ArticleList.CurrentPageIndex * ArticleList.PageSize + ID).ToString();
}
------解决方案--------------------
加一模版列,绑定内容如下

<columns>
<asp:templatecolumn>
<itemtemplate>
<%# Container.DataItemIndex + 1 %>
</itemtemplate>
<asp:templatecolumn>