{
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();
}
}
本文介绍了一个使用ASP.NET进行数据绑定的过程,包括从数据库获取数据、填充数据集、更新GridView以及通过DetailsView进行数据插入操作。具体展示了如何在Page_Load事件中判断是否为回发请求,并根据不同情况调用数据绑定方法。

97

被折叠的 条评论
为什么被折叠?



