如何计算ASP.NET C#中的gridview列 [英] How to count gridview column in ASP.NET C#
本文介绍了如何计算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屋!
查看全文