HOW TO: Create a Summary Row For a Windows Form DataGrid by Using C# ???? 1,在table上手工添加一空白列,2,循环所有列,并在循环内累加3,累加结果放在此空白列中我以前这麽作过,可行,你研究研究 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 可以的datacolumn.Expression="Count(列名)"//汇总类型 DataSet1.Tables("Orders").Columns("OrderCount").Expression = "Count(OrderID)" 设置Showfooter=true添加ItemDataBound事件处理在事件处理中,进行各种汇总:private void DataGridZF_ItemDataBound(object sender, DataGridItemEventArgs e){switch((int)(e.Item.ItemType)){ case (int)ListItemType.Item: case (int)ListItemType.AlternatingItem: if(e.Item.Cells[3].Text.Length>6) { e.Item.Cells[3].ToolTip=e.Item.Cells[3].Text; e.Item.Cells[3].Text=e.Item.Cells[3].Text.Substring(0,6)+"..."; } if(e.Item.Cells[5].Text=="0") { e.Item.Cells[5].Text="未计价"; } else { e.Item.Cells[5].Text="已计价"; e.Item.Cells[7].Controls[0].Visible=false; e.Item.Cells[6].Controls[0].Visible=false; } break; case (int)ListItemType.Header: e.Item.Cells[0].Text="支付日期"; e.Item.Cells[1].Text="支付金额"; e.Item.Cells[2].Text="经办人"; e.Item.Cells[3].Text="备注"; e.Item.Cells[4].Text="章节ID"; e.Item.Cells[5].Text="计价否"; break; case (int)ListItemType.Footer: DataTable tb=(DataTable)Session["ZFLIST"]; double je=0; for(int i=0;i<tb.Rows.Count;i++) { je+=Convert.ToDouble(tb.Rows[i]["je"]); } e.Item.Cells[0].Text="累计支付金额:"; NumberFormatInfo nfi = new CultureInfo( "en-US", false ).NumberFormat; nfi.NumberDecimalDigits = 2; e.Item.Cells[1].Text=je.ToString("N", nfi); e.Item.Cells[2].Text="总价值"; e.Item.Cells[3].Text=jz.Text; break; }} temproom(temproom) :你讲的是asp.net的,我要的是windows form的谁能给一段代码看一看,谢谢 C# 在屏幕画线的问题 我想把LISTVIEW里面每一列里面的数值都统计下, 高分求教小问题,急急急 在web程序中,如何获取客户端的ip地址? 菜单 请教一个正则表达式的问题 自己写的用户控件,如何控制构造函数在设计的时候不运行部分代码? 用GDI+怎样画出压扁的字体 (100分)求QQ消息群发程序(在线等) 为什么非要给分!? 关于HttpWebRequest的疑问 讨论C#的值类型和引用类型
datacolumn.Expression="Count(列名)"//汇总类型
添加ItemDataBound事件处理
在事件处理中,进行各种汇总:
private void DataGridZF_ItemDataBound(object sender, DataGridItemEventArgs e)
{
switch((int)(e.Item.ItemType))
{
case (int)ListItemType.Item:
case (int)ListItemType.AlternatingItem:
if(e.Item.Cells[3].Text.Length>6)
{
e.Item.Cells[3].ToolTip=e.Item.Cells[3].Text;
e.Item.Cells[3].Text=e.Item.Cells[3].Text.Substring(0,6)+"...";
}
if(e.Item.Cells[5].Text=="0")
{
e.Item.Cells[5].Text="未计价";
}
else
{
e.Item.Cells[5].Text="已计价";
e.Item.Cells[7].Controls[0].Visible=false;
e.Item.Cells[6].Controls[0].Visible=false;
}
break;
case (int)ListItemType.Header:
e.Item.Cells[0].Text="支付日期";
e.Item.Cells[1].Text="支付金额";
e.Item.Cells[2].Text="经办人";
e.Item.Cells[3].Text="备注";
e.Item.Cells[4].Text="章节ID";
e.Item.Cells[5].Text="计价否";
break;
case (int)ListItemType.Footer:
DataTable tb=(DataTable)Session["ZFLIST"];
double je=0;
for(int i=0;i<tb.Rows.Count;i++)
{
je+=Convert.ToDouble(tb.Rows[i]["je"]);
}
e.Item.Cells[0].Text="累计支付金额:";
NumberFormatInfo nfi = new CultureInfo( "en-US", false ).NumberFormat;
nfi.NumberDecimalDigits = 2;
e.Item.Cells[1].Text=je.ToString("N", nfi);
e.Item.Cells[2].Text="总价值";
e.Item.Cells[3].Text=jz.Text;
break;
}
}