2024年终活动

DevExpress控件使用交流,DevExpress中国社区Dev联系电话 联系电话:023-68661681

ASPxGridView控件常用示例一:添加一个非绑定列

来源:本站原创   发布时间:2012-11-06   浏览:4904次

假设ASPxGridView网格控件被绑定到一个“Orders”数据表(NWIND数据库),该数据表中包含了"UnitPrice", "Quantity" 和 "Discount" 等字段。虽然,在该表中没有一个代表总和的字段,但是可以手动计算如下:UnitPrice*Quantity*(1-Discount)。该示例展示了如何添加一个非绑定列到ASPxGridView中,以展示订单SUM总和。

C#


using DevExpress.Web.ASPxGridView;
protected void ASPxGridView1_Init(object sender, EventArgs e) {
// Creates a column, customizes its settings and appends it to the Columns collection;
GridViewDataTextColumn colTotal = new GridViewDataTextColumn();
colTotal.Caption = "Total";
colTotal.FieldName = "Total";
colTotal.UnboundType = DevExpress.Data.UnboundColumnType.Integer;
colTotal.VisibleIndex = ASPxGridView1.VisibleColumns.Count;
colTotal.PropertiesTextEdit.DisplayFormatString = "c2";
ASPxGridView1.Columns.Add(colTotal);
}
// Populates the unbound column.
protected void ASPxGridView1_CustomUnboundColumnData(object sender,
ASPxGridViewColumnDataEventArgs e) {
if (e.Column.FieldName == "Total") {
decimal unitPrice = Convert.ToDecimal(e.GetListSourceFieldValue("UnitPrice"));
int quantity = Convert.ToInt32(e.GetListSourceFieldValue("Quantity"));
decimal discount = Convert.ToDecimal(e.GetListSourceFieldValue("Discount"));
e.Value = unitPrice * quantity * (1 - discount);
}


VB


Imports DevExpress.Web.ASPxGridView
Protected Sub ASPxGridView1_Init(ByVal sender As Object, ByVal e As System.EventArgs)_
Handles ASPxGridView1.Init
' Creates a column, customizes its settings and appends it to the Columns collection;
Dim colTotal As GridViewDataTextColumn = New GridViewDataTextColumn()
colTotal.Caption = "Total"
colTotal.FieldName = "Total"
colTotal.UnboundType = DevExpress.Data.UnboundColumnType.Integer
colTotal.VisibleIndex = ASPxGridView1.VisibleColumns.Count
colTotal.PropertiesTextEdit.DisplayFormatString = "c2"
ASPxGridView1.Columns.Add(colTotal)
End Sub
' Populates the unbound column.
Protected Sub ASPxGridView1_CustomUnboundColumnData(ByVal sender As Object,_
ByVal e As DevExpress.Web.ASPxGridView.ASPxGridViewColumnDataEventArgs)_
Handles ASPxGridView1.CustomUnboundColumnData
If e.Column.FieldName = "Total" Then
Dim unitPrice As Decimal = Convert.ToDecimal(e.GetListSourceFieldValue("UnitPrice"))
Dim quantity As Integer = Convert.ToInt32(e.GetListSourceFieldValue("Quantity"))
Dim discount As Decimal = Convert.ToDecimal(e.GetListSourceFieldValue("Discount"))
e.Value = unitPrice * quantity * (1 - discount)
End If
End Sub


结果如下:

本站文章除注明转载外,均为本站原创或翻译
欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果
转载请注明:文章转载自:DevExpress控件中文网 [https://www.devexpresscn.com/]
本文地址:https://www.devexpresscn.com/post/406.html
扫码咨询
电话咨询
023-68661681
返回
顶部