C# 如何计算Gridview小计下一行的百分比?

C# 如何计算Gridview小计下一行的百分比?,c#,sql,asp.net,gridview,C#,Sql,Asp.net,Gridview,我想在GridView上再创建一行,或者它们可以是独立的单元格,显示2014年12月Dailysales和2013年12月Dailysales小计之间的百分比变化。我已经提供了后面的代码。我该怎么做 using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI;

我想在GridView上再创建一行,或者它们可以是独立的单元格,显示2014年12月Dailysales和2013年12月Dailysales小计之间的百分比变化。我已经提供了后面的代码。我该怎么做

        using System;
        using System.Collections.Generic;
        using System.Linq;
        using System.Web;
        using System.Web.UI;
        using System.Web.UI.WebControls;

        namespace TowelsRusV3
        {
            public partial class Sales_Comparison : System.Web.UI.Page
            {
                protected void Page_Load(object sender, EventArgs e)
                {

                }
                private decimal December2014DailySales = (decimal)0.0;
                private decimal December2013DailySales = (decimal)0.0;
                private decimal DailySalesDifference = (decimal)0.0;
                private decimal December2014DailyOrderCount = (decimal)0.0;
                private decimal December2013DailyOrderCount = (decimal)0.0;
                private decimal DailyOrderCountDifference = (decimal)0.0;
                protected void salecompgridview_RowDataBound(object sender, GridViewRowEventArgs e)
                {
                    if (e.Row.RowType == DataControlRowType.DataRow)
                    {
                        December2014DailySales += Convert.ToDecimal(DataBinder.Eval(e.Row.DataItem, "December2014DailySales"));
                        December2013DailySales += Convert.ToDecimal(DataBinder.Eval(e.Row.DataItem, "December2013DailySales"));
                        DailySalesDifference += Convert.ToDecimal(DataBinder.Eval(e.Row.DataItem, "DailySalesDifference"));
                        December2014DailyOrderCount += Convert.ToDecimal(DataBinder.Eval(e.Row.DataItem, "December2014DailyOrderCount"));
                        December2013DailyOrderCount += Convert.ToDecimal(DataBinder.Eval(e.Row.DataItem, "December2013DailyOrderCount"));
                        DailyOrderCountDifference += Convert.ToDecimal(DataBinder.Eval(e.Row.DataItem, "DailyOrderCountDifference"));

                    }

                    else if (e.Row.RowType == DataControlRowType.Footer)
                    {
                        e.Row.Cells[1].Text = String.Format("{0:c}", December2014DailySales);
                        e.Row.Cells[3].Text = String.Format("{0:c}", December2013DailySales);
                        e.Row.Cells[5].Text = String.Format("{0:c}", DailySalesDifference);
                        e.Row.Cells[2].Text = String.Format("{0:g}", December2014DailyOrderCount);
                        e.Row.Cells[4].Text = String.Format("{0:g}", December2013DailyOrderCount);
                        e.Row.Cells[6].Text = String.Format("{0:g}", DailyOrderCountDifference);
                    }

                }
            }
        }

尝试手动添加行,并将空单元格设置为,将非空单元格设置为预先计算的值。希望有帮助。

您可以将该值存储在网格的任何单元格中,如下所示:

salecompgridview.Rows[0].Cells[0].Text = ((December2014DailySales - December2013DailySales) / December2013DailySales * 100).ToString();

只需使用适当的行和单元格索引。

我不确定是否遇到问题。您只想在单元格中显示December2014DailySales/December2013DailySales?PS:不要输入小数0.0,只需输入0.0M或0M或0!我想在单元格中显示此计算。2014年12月Dailysales-2013年12月Dailysales/2014年12月Dailysales*100这应该显示2013年至2014年的销售额增长百分比,然后是什么问题?为什么你不能把它分配给一个单元格?但是,您应该除以December2013DailySales并使用括号:问题是我不知道;我不知道如何将其编码为在单元格中显示。您是否调试了在gridview中获得的内容。例如,行[0]用于查找单元格数据,然后尝试为其分配某些内容?