如何计算ASP.NET C#中的gridview列 [英] How to count gridview column in ASP.NET C#

查看:63
本文介绍了如何计算ASP.NET C#中的gridview列的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个gridview,它包含的列像

I have a gridview and it is containing column like

<br />
Sr | Name  | D1 | D2 | D3 | D4 | D5 | D6 | D7 | L | A | <br />
1  | Name1 | P  | P  | P  | L  | A  | A  | P  |   |   | <br />
1  | Name2 | L  | P  | P  | P  | A  | A  | A  |   |   | <br />





现在我的问题是。如何计算Name1(从D1到D7)L列中的L和A列中的A,例如





Now my question is. How can I count Name1 (from D1 to D7) only L in L column and A in A column like

Sr | Name  | D1 | D2 | D3 | D4 | D5 | D6 | D7 | L | A | 
1  | Name1 | P  | P  | P  | L  | A  | A  | P  | 1 | 2 | 
1  | Name2 | L  | L  | P  | P  | A  | A  | A  | 2 | 2 | 





Plz帮助....

谢谢。



我尝试过:



................. ...............



Plz help ....
Thanks.

What I have tried:

................................

推荐答案

试试这个



try this

<asp:GridView ID="GridView1" HeaderStyle-BackColor="#3AC0F2" HeaderStyle-ForeColor="White"
             runat="server" AutoGenerateColumns="false">
             <Columns>
                 <asp:BoundField DataField="Sr"  HeaderText="Id"   />
                 <asp:BoundField DataField="Name"   HeaderText="Name"   />
                 <asp:BoundField DataField="D1"  HeaderText="D1"  />
                 <asp:BoundField DataField="D2"  HeaderText="D2"  />
                 <asp:BoundField DataField="D3"  HeaderText="D3"  />
                 <asp:BoundField DataField="D4"  HeaderText="D4"  />
                 <asp:BoundField DataField="D5"  HeaderText="D5"  />
                 <asp:BoundField DataField="D6"  HeaderText="D6"  />
                 <asp:BoundField DataField="D7"  HeaderText="D7"  />
                 <asp:BoundField DataField="L"  HeaderText="L"  />
                 <asp:BoundField DataField="A"  HeaderText="A"  />

             </Columns>
         </asp:GridView>







protected void Page_Load(object sender, EventArgs e)
        {
            if (!this.IsPostBack)
            {
                DataTable dt = new DataTable();
                dt.Columns.Add("Sr");
                dt.Columns.Add("Name");
                dt.Columns.Add("D1");
                dt.Columns.Add("D2");
                dt.Columns.Add("D3");
                dt.Columns.Add("D4");
                dt.Columns.Add("D5");
                dt.Columns.Add("D6");
                dt.Columns.Add("D7");
                dt.Columns.Add("L");
                dt.Columns.Add("A");

                dt.Rows.Add(1,"Name1","P","P","P","L","A","A","P");
                dt.Rows.Add(1, "Name2", "L", "L", "P", "P", "A", "A", "A");
                DataTable dtFinal = dt.Clone();

                foreach (DataRow row in dt.Rows)
                {
                    int l = 0, a = 0, p = 0;
                    var aray = new string[]{"D1","D2","D3","D4","D5","D6","D7"};
                    foreach (var col in aray)
                    {
                        if (Convert.ToString(row[col]) == "L")
                            l++;
                        if (Convert.ToString(row[col]) == "P")
                            p++;
                        if (Convert.ToString(row[col]) == "A")
                            a++;
                    }
                    row["L"] = l.ToString();
                    row["A"] = a.ToString();

                }

                GridView1.DataSource = dt;
                GridView1.DataBind();
            }
        }


这篇关于如何计算ASP.NET C#中的gridview列的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆