关于VS05 ASP.NET中 gridview某列求和的问题 急
用ASP.NET做了一个简单的网站不过购物车出现了点小问题本来打算将某列求和显示在底部的label中不过现在VS05没有LINQ了原来的语句没法用了不知怎么解决代码如下v...
用ASP.NET做了一个简单的网站 不过购物车出现了点小问题 本来打算将某列求和 显示在底部的label中 不过现在VS05没有LINQ了 原来的语句没法用了 不知怎么解决 代码如下
void Creatdb()
{
dt = new DataTable();
DataColumn MyColumn = new DataColumn();
MyColumn.ColumnName = "DDID";
MyColumn.DataType = typeof(Int32);
MyColumn.AutoIncrement = true;
MyColumn.AutoIncrementSeed = 1;
MyColumn.AutoIncrementStep = 1;
dt.Columns.Add(MyColumn);
MyColumn = new DataColumn();
MyColumn.ColumnName = "CPID";
MyColumn.DataType = typeof(Int32);
dt.Columns.Add(MyColumn);
dt.Columns.Add(new DataColumn("CPNAME", typeof(string)));
dt.Columns.Add(new DataColumn("CPDJ", typeof(double)));
dt.Columns.Add(new DataColumn("SL", typeof(Int32)));
dt.Columns.Add(new DataColumn("CPSUM", typeof(double)));
dt.AcceptChanges();
dt.PrimaryKey = new DataColumn[] { dt.Columns[0] };
dt.AcceptChanges();
}
protected void ListView1_ItemCommand1(object sender, ListViewCommandEventArgs e)
{
if (e.CommandArgument == "CPBY")
{
Label MyLabel = new Label();
MyLabel = (Label)e.Item.FindControl("CPIDLabel");
DataRow Mrow = dt.NewRow();
Mrow["CPID"] = Convert.ToInt32(MyLabel.Text);
MyLabel = new Label();
MyLabel = (Label)e.Item.FindControl("CPNAMELabel");
Mrow["CPNAME"] = MyLabel.Text;
MyLabel = new Label();
MyLabel = (Label)e.Item.FindControl("CPDJLabel");
Mrow["CPDJ"] = Convert.ToDouble(MyLabel.Text);
Mrow["SL"] = 1;
Mrow["CPSUM"] = Mrow["CPDJ"];
dt.Rows.Add(Mrow);
dt.AcceptChanges();
GridView1.DataSource = dt;
GridView1.DataBind();
}
}
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
这里应该怎么填写呢......
}
gridview中的东西是从别的表里提出的 如果问题解决 追加分数...谢谢
有意者加我QQ吧 373294076 谢谢 展开
void Creatdb()
{
dt = new DataTable();
DataColumn MyColumn = new DataColumn();
MyColumn.ColumnName = "DDID";
MyColumn.DataType = typeof(Int32);
MyColumn.AutoIncrement = true;
MyColumn.AutoIncrementSeed = 1;
MyColumn.AutoIncrementStep = 1;
dt.Columns.Add(MyColumn);
MyColumn = new DataColumn();
MyColumn.ColumnName = "CPID";
MyColumn.DataType = typeof(Int32);
dt.Columns.Add(MyColumn);
dt.Columns.Add(new DataColumn("CPNAME", typeof(string)));
dt.Columns.Add(new DataColumn("CPDJ", typeof(double)));
dt.Columns.Add(new DataColumn("SL", typeof(Int32)));
dt.Columns.Add(new DataColumn("CPSUM", typeof(double)));
dt.AcceptChanges();
dt.PrimaryKey = new DataColumn[] { dt.Columns[0] };
dt.AcceptChanges();
}
protected void ListView1_ItemCommand1(object sender, ListViewCommandEventArgs e)
{
if (e.CommandArgument == "CPBY")
{
Label MyLabel = new Label();
MyLabel = (Label)e.Item.FindControl("CPIDLabel");
DataRow Mrow = dt.NewRow();
Mrow["CPID"] = Convert.ToInt32(MyLabel.Text);
MyLabel = new Label();
MyLabel = (Label)e.Item.FindControl("CPNAMELabel");
Mrow["CPNAME"] = MyLabel.Text;
MyLabel = new Label();
MyLabel = (Label)e.Item.FindControl("CPDJLabel");
Mrow["CPDJ"] = Convert.ToDouble(MyLabel.Text);
Mrow["SL"] = 1;
Mrow["CPSUM"] = Mrow["CPDJ"];
dt.Rows.Add(Mrow);
dt.AcceptChanges();
GridView1.DataSource = dt;
GridView1.DataBind();
}
}
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
这里应该怎么填写呢......
}
gridview中的东西是从别的表里提出的 如果问题解决 追加分数...谢谢
有意者加我QQ吧 373294076 谢谢 展开
展开全部
decimal sum=0;
foreach (GridViewRow row in GridView1.Rows)
{
sum += Convert.ToDecimal(row.Cells[求和那一列的索引].Text);
}
Label1.Text = sum.ToString();
他这段不该放在GridView1_RowDataBound事件里
放在一个自定义的绑定方法里就行了
foreach (GridViewRow row in GridView1.Rows)
{
sum += Convert.ToDecimal(row.Cells[求和那一列的索引].Text);
}
Label1.Text = sum.ToString();
他这段不该放在GridView1_RowDataBound事件里
放在一个自定义的绑定方法里就行了
追问
编译错误
说明: 在编译向该请求提供服务所需资源的过程中出现错误。请检查下列特定错误详细信息并适当地修改源代码。
编译器错误消息: CS1502: 与“System.Web.UI.WebControls.TableCellCollection.this[int]”最匹配的重载方法具有一些无效参数
源错误:
还是这个错误...能否加下我的QQ 373294076 谢谢
追答
加吧
展开全部
的是字符串类型的格式,你想要输出sum的话,或者输入字符串肯定要进行类型转换。具体的把代码粘上来再看
追问
行 167: foreach (GridViewRow row in GridView1.Rows)
行 168: {
行 169: sum += Convert.ToDouble(row.Cells["CPSUM"].Text);
行 170:
行 171: }
怎么回事
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
decimal sum=0;
foreach (GridViewRow row in GridView1.Rows)
{
sum += Convert.ToDecimal(row.Cells[求和那一列的索引].Text);
}
Label1.Text = sum.ToString();
foreach (GridViewRow row in GridView1.Rows)
{
sum += Convert.ToDecimal(row.Cells[求和那一列的索引].Text);
}
Label1.Text = sum.ToString();
追问
编译错误
说明: 在编译向该请求提供服务所需资源的过程中出现错误。请检查下列特定错误详细信息并适当地修改源代码。
编译器错误消息: CS1502: 与“System.Web.UI.WebControls.TableCellCollection.this[int]”最匹配的重载方法具有一些无效参数
源错误:
报错了 怎么回事?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询