关于(webabcd兄的在GridView中插入新记录)的手动绑定数据做法
2007-04-18 14:57
417 查看
本人是菜鸟
看了webabcd兄的在GridView中插入新记录文章感觉非常好~但我不太喜欢用数据源控件绑定,所以自己做了一个自己的手动绑定数据的~开始遇到一个疑问就是找空白模版的控件ID的问题~后来在网上找到解决方法了,好把代码放出希望能帮助大家
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
bind();
}
}
void bind()
{
DataSet ds = new DataSet();
GridView1.DataSource = getData(ds);
GridView1.DataBind();
}
private static DataSet getData(DataSet ds)
{
using (SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["lucaConnectionString"].ToString()))
{
SqlDataAdapter sda = new SqlDataAdapter("select * from jobs", con);
sda.Fill(ds);
return ds;
}
}
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "insert")
{
GridView1.DataSource = "";
GridView1.DataBind();
}
}
protected void DetailsView1_ItemInserting(object sender, DetailsViewInsertEventArgs e)
{
using (SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["lucaConnectionString"].ToString()))
{
//空白模版里的控件找法必须是这样的不知道为什么是这样希望高手指点
DetailsView d = GridView1.Controls[0].Controls[0].FindControl("DetailsView1") as DetailsView;
string desc = (d.Rows[0].Cells[1].Controls[0] as TextBox).Text;
int min_lvl = int.Parse((d.Rows[1].Cells[1].Controls[0] as TextBox).Text);
int max_lvl = int.Parse((d.Rows[2].Cells[1].Controls[0] as TextBox).Text);
string sql = "insert into jobs values(@desc,@min,@max)";
SqlCommand cmd = con.CreateCommand();
cmd.Parameters.Add("@desc", SqlDbType.VarChar).Value = desc;
cmd.Parameters.Add("@min", SqlDbType.Int).Value = min_lvl;
cmd.Parameters.Add("@max", SqlDbType.Int).Value = max_lvl;
cmd.CommandText = sql;
con.Open();
cmd.ExecuteNonQuery();
bind();
}
}
protected void DetailsView1_ModeChanging(object sender, DetailsViewModeEventArgs e)
{
if (!e.Cancel)
{
bind();
}
}
看了webabcd兄的在GridView中插入新记录文章感觉非常好~但我不太喜欢用数据源控件绑定,所以自己做了一个自己的手动绑定数据的~开始遇到一个疑问就是找空白模版的控件ID的问题~后来在网上找到解决方法了,好把代码放出希望能帮助大家
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
bind();
}
}
void bind()
{
DataSet ds = new DataSet();
GridView1.DataSource = getData(ds);
GridView1.DataBind();
}
private static DataSet getData(DataSet ds)
{
using (SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["lucaConnectionString"].ToString()))
{
SqlDataAdapter sda = new SqlDataAdapter("select * from jobs", con);
sda.Fill(ds);
return ds;
}
}
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "insert")
{
GridView1.DataSource = "";
GridView1.DataBind();
}
}
protected void DetailsView1_ItemInserting(object sender, DetailsViewInsertEventArgs e)
{
using (SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["lucaConnectionString"].ToString()))
{
//空白模版里的控件找法必须是这样的不知道为什么是这样希望高手指点
DetailsView d = GridView1.Controls[0].Controls[0].FindControl("DetailsView1") as DetailsView;
string desc = (d.Rows[0].Cells[1].Controls[0] as TextBox).Text;
int min_lvl = int.Parse((d.Rows[1].Cells[1].Controls[0] as TextBox).Text);
int max_lvl = int.Parse((d.Rows[2].Cells[1].Controls[0] as TextBox).Text);
string sql = "insert into jobs values(@desc,@min,@max)";
SqlCommand cmd = con.CreateCommand();
cmd.Parameters.Add("@desc", SqlDbType.VarChar).Value = desc;
cmd.Parameters.Add("@min", SqlDbType.Int).Value = min_lvl;
cmd.Parameters.Add("@max", SqlDbType.Int).Value = max_lvl;
cmd.CommandText = sql;
con.Open();
cmd.ExecuteNonQuery();
bind();
}
}
protected void DetailsView1_ModeChanging(object sender, DetailsViewModeEventArgs e)
{
if (!e.Cancel)
{
bind();
}
}
相关文章推荐
- 在GridView中插入新记录的手动绑定数据做法
- C# 在dataGridView中行首或行尾手动添加记录、修改一行记录(1.行尾添加,非数据库连接形式 2.修改某一行的数据 3.插入行首,不覆盖行首)
- SQL数据导入后,为什么原先的WEB程序无法插入记录呢?
- 关于通过web页面删除数据记录的设计改进
- GridView数据绑定时数据源为空时显示表头和"没有记录"
- 手动绑定数据到GridView并实现编辑,删除,取消···
- 手动绑定数据到GridView并实现编辑,删除,取消···
- Scott Mitchell 的ASP.NET 2.0数据教程之53:从GridView的页脚插入新记录 .
- Visual Studio 2017 - Windows应用程序打包成exe文件(2)- Advanced Installer 关于Newtonsoft.Json,LINQ to JSON的一个小demo mysql循环插入数据、生成随机数及CONCAT函数 .NET记录-获取外网IP以及判断该IP是属于网通还是电信 Guid的生成和数据修整(去除空格和小写字符)
- 关于GridView手动绑定的一段代码,一切尽在不言中
- 关于gridview插入数据后,不能同步刷新的问题
- 关于含有标识字段的数据表中记录的插入问题解决(IDENTITY_INSERT)
- 关于.net Web开发及WinForm数据绑定实例
- 手动绑定数据到GridView并实现编辑,删除,取消···
- GridView控件常见问题及处理方法===1. 关于隐藏字段的处理:==2. 关于按钮列的事件:==3. 关于按钮的客户端提示:==4. 关于时间字段的格式化输出:==5. 关于绑定空记录:
- 手动绑定数据到GridView并实现编辑,删除,取消···
- ASP.NET 2.0中用Gridview控件操作数据——使用Gridview插入新记录
- 关于gridview绑定数据为空时的界面设计
- 手动绑定数据到GridView并实现编辑,删除,取消···
- 手动绑定数据到GridView并实现编辑,删除,取消···