SQL语句
SELECT
CASE
GROUPING
(o.customerid)
WHEN
0
THEN
o.customerid
ELSE
'
(Total)
'
END
AS
MyCustomerID,
CASE
GROUPING
(od.orderid)
WHEN
0
THEN
od.orderid
ELSE
-
1
END
AS
MyOrderID,
SUM
(od.quantity
*
od.unitprice)
AS
price
FROM
Orders o,
[
Order Details
]
od
WHERE
Year
(orderdate)
=
1998
AND
od.orderid
=
o.orderid
GROUP
BY
o.customerid, od.orderid
WITH
ROLLUP
ORDER
BY
o.customerid, price
在DataGrid中添加ItemCreated事件
private
void
dgOrder_ItemCreated(
object
sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
ListItemType itemType = e.Item.ItemType;
if (itemType == ListItemType.Item || itemType == ListItemType.AlternatingItem)
{
DataRowView drv = (DataRowView) e.Item.DataItem;
if (drv != null)
{
if ((int) drv["MyOrderID"] == -1)
{
e.Item.BackColor = Color.White;
e.Item.Font.Bold = true;
e.Item.Cells.RemoveAt(1);
e.Item.Cells[0].ColumnSpan = 2;
e.Item.Cells[1].HorizontalAlign = HorizontalAlign.Right;
}
}
}
}
0
0
(请您对文章做出评价)
本文介绍了一种在DataGrid中实现数据汇总的方法,通过SQL语句进行数据预处理,并利用ItemCreated事件对显示样式进行定制化调整。

1314

被折叠的 条评论
为什么被折叠?



