1。
Data dt = new Data();
========
Data 一个自定义类?2。
最直接,也是比较合理的是 SELECT 的时候处理string sql = "SELECT HighPrice, LowPrice, (HighPrice - LowPrice) DiffPrice FROM tbl";3。
如果不是从数据库 select 出来的,那么可以为 DataTable 添加一计算列ds.Tables[0].Columns.Add(new Column("DiffPrice", typeof(decimal)));
ds.Tables[0].Columns[ds.Tables[0].Columns.Count-1].Expression = "HighPrice - LowPrice";
4.
DataList/DataGrid/GridView 在其 ItemDataBound 的时候处理最佳,不需要重新遍历

解决方案 »

  1.   

    ... xxx_ItemDataBound(...
    {
         Label lb = e.Item.FindControl("lbPrice") as Label;
         if(lb != null) {
         DataRowView drv = e.Item.DataItem; // 获取当前行提供绑定的数据源
    decimal HighPrice = (decimal)drv["HighPrice"];
    decimal LowPrice = (decimal)drv["LowPrice"];
    decimal Price = HighPrice - LowPrice;
    lb.Text = Price.ToString();
    }
    }
    以上假设,数据类型为 decimal
      

  2.   

    一般来说,最好是用sql语句来完成
    select a,b,a-b from c 这样就比较好