ASPxGridView:添加一个非绑定列

来源:互联网 发布:linux系统性能报告 编辑:程序博客网 时间:2024/05/01 15:37

转载自慧都控件网:http://www.evget.com/zh-CN/Info/catalog/18037.html

假设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.ASPxGridViewProtected 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.IntegercolTotal.VisibleIndex = ASPxGridView1.VisibleColumns.CountcolTotal.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.CustomUnboundColumnDataIf e.Column.FieldName = "Total" ThenDim 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 IfEnd Sub

结果如下:


原创粉丝点击