日期:2014-05-19  浏览次数:20396 次

如何使用SqlDataSource把在GridView模板列中的TextBox值批量写入数据库?
我用SqlDataSource读取了数据库中的一张表(T1)并绑定了一个GridView。
在GridView在创建了一个模板列,里面放了一个TextBox控件,并双向绑定了T1中的一个字段(A1)。我想通过一个Button事件,把我写在GridView的TextBox中的数据批量更新到T1表中。因该怎么做?谢谢

------解决方案--------------------
http://dotnet.aspx.cc/article/a933b187-06c3-4263-9eec-414a54d9c815/read.aspx
------解决方案--------------------
int rowsCount = GridView1.Rows.Count;
GridViewRow gridRow;
TextBox priceTextBox;

int Price, Id;

// 遍历GridView中的每一行
for (int i = 0; i < rowsCount; i++)
{
// 获行当前行
gridRow = GridView1.Rows[i];
// 通过DATAKEYS来取行没显示出来的ID号
Id = Convert.ToInt32(GridView1.DataKeys[i].Value);
//
priceTextBox = (TextBox)gridRow.FindControl( "TextBox2 ");
// 转换为整形,如果输入的是非法字符Int32.TryParse返回FALSE
if (Int32.TryParse(priceTextBox.Text, out Price))
{
// 调用业务层的方法更新数据

ServerTableBll ServerTableUpdate = new ServerTableBll();
ServerTableUpdate.UpdateServerTable(Id, Price.ToString());
}
else
{
// 更新失败

}
// 显示信息
//statusLabel.Text = success ?
// " <br /> 更新成功! <br /> " :
// " <br /> 更新失败! <br /> ";
}