怎么样在DataGrid里增加一个标识列? 我想在DataGrid里增加一个标识列,增示学生的名次,请问大家怎么实现? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 select 1+isnull((select count(1) from #t where 总分>a.总分),0) as 名次,学号,姓名,总分from #t a order by 总分 desc sql语句里面写,datagrid绑定这列 你可以在html中datagrid项目里面添加<ItemTemplate><!-- 这里是关键--> <SPAN> <%# Container.ItemIndex+1 %></SPAN> </ItemTemplate> 我查询的SQL语句是:Select Expr2,avg(CourseResult) as CourseResult From dbo.VIEW_classwhere ID=1 and Expr7=3group by Expr1,Expr2 aspx页面加<Columns> <asp:BoundColumn HeaderText=" 名次"></asp:BoundColumn>cs代码写private void dg_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e) { if(e.Item.ItemType==ListItemType.Item || e.Item.ItemType==ListItemType.AlternatingItem) { e.Item.Cells[0].Text = e.Item.ItemIndex+1 } } 最简单的办法应该是在数据库通过临时表加入一列标识列。避免页面绑定中的复杂操作(包括考虑分页,排序等)==== ~~~~ 我的Blog:http://blog.csdn.net/quou2002 在html里面加上:(其中下面的dgShow是你datagrid的名字)<asp:TemplateColumn HeaderText="序号"> <HeaderStyle Wrap="False" Width="40px"></HeaderStyle> <ItemStyle Wrap="False" HorizontalAlign="Left"></ItemStyle> <ItemTemplate> <%# this.dgShow.CurrentPageIndex * this.dgShow.PageSize + Container.ItemIndex + 1%> </ItemTemplate> </asp:TemplateColumn> 分页时可以这样写不过感觉很笨。。<Columns><asp:BoundColumn HeaderText=" 名次"></asp:BoundColumn>cs代码写private void dg_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e){if(e.Item.ItemType==ListItemType.Item || e.Item.ItemType==ListItemType.AlternatingItem){ e.Item.Cells[0].Text = e.Item.ItemIndex+1 + dg.CurrentPageIndex * dg.PageSize }} 在html里面加上:(其中下面的dgShow是你datagrid的名字)<asp:TemplateColumn HeaderText="名次"> <HeaderStyle Wrap="False" Width="40px"></HeaderStyle> <ItemStyle Wrap="False" HorizontalAlign="Left"></ItemStyle> <ItemTemplate> <%# this.dgShow.CurrentPageIndex * this.dgShow.PageSize + Container.ItemIndex + 1%> </ItemTemplate> </asp:TemplateColumn> 关于在Calendar控件中文字的一个疑问 点击按钮实现无刷新页面 怎么写? 如何根据数据做出对应的柱状图和折线图??? 如何在PreInit阶段提前结束页面的生命周期 ado.net问题 如何实现单击treeview的一个子节点,在sql数据库里查询出相应内容并显示在datagrid里? 怎么使用frame和treeview控件来实现导航功能 请问如何在.cs文件中执行Response.Redirect()? [求助] 存储过程问题~ 弹出对话框的问题----VB.NET dropdownlist的问题,谢谢 DropdownList 怎么从CheckBoxList得到值
from #t a order by 总分 desc
sql语句里面写,datagrid绑定这列
<ItemTemplate>
<!-- 这里是关键-->
<SPAN>
<%# Container.ItemIndex+1 %></SPAN>
</ItemTemplate>
Select Expr2,avg(CourseResult) as CourseResult From dbo.VIEW_class
where ID=1 and Expr7=3
group by Expr1,Expr2
<Columns>
<asp:BoundColumn HeaderText=" 名次"></asp:BoundColumn>
cs代码写
private void dg_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if(e.Item.ItemType==ListItemType.Item || e.Item.ItemType==ListItemType.AlternatingItem)
{
e.Item.Cells[0].Text = e.Item.ItemIndex+1
}
}
~~~~ 我的Blog:http://blog.csdn.net/quou2002
<asp:TemplateColumn HeaderText="序号">
<HeaderStyle Wrap="False" Width="40px"></HeaderStyle>
<ItemStyle Wrap="False" HorizontalAlign="Left"></ItemStyle>
<ItemTemplate>
<%# this.dgShow.CurrentPageIndex * this.dgShow.PageSize + Container.ItemIndex + 1%>
</ItemTemplate>
</asp:TemplateColumn>
<Columns>
<asp:BoundColumn HeaderText=" 名次"></asp:BoundColumn>
cs代码写
private void dg_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if(e.Item.ItemType==ListItemType.Item || e.Item.ItemType==ListItemType.AlternatingItem)
{
e.Item.Cells[0].Text = e.Item.ItemIndex+1 + dg.CurrentPageIndex * dg.PageSize
}}
<asp:TemplateColumn HeaderText="名次">
<HeaderStyle Wrap="False" Width="40px"></HeaderStyle>
<ItemStyle Wrap="False" HorizontalAlign="Left"></ItemStyle>
<ItemTemplate>
<%# this.dgShow.CurrentPageIndex * this.dgShow.PageSize + Container.ItemIndex + 1%>
</ItemTemplate>
</asp:TemplateColumn>