注册 登录
编程论坛 ASP.NET技术论坛

菜鸟求高手帮忙

a256725 发布于 2012-11-08 13:52, 682 次点击
我创建一个按钮和一个gridview
我想要是实现的是
点击按钮
连接到本地数据库
把本地数据库的一个表显示在gridview内
gridview内可以编辑删除
就这么简单。
9 回复
#2
a2567252012-11-08 17:49
这么简单没人帮解决。。主要是单击按钮,gridview才绑定和显示sql表
#3
tww1248499802012-11-09 11:15
你还是把你初步写的代码发出来,有不对的大家给你改下,实现的话谁有时间啊。
#4
a2567252012-11-09 17:21
protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
    {
        string KeyId = GridView1.DataKeys[e.RowIndex].Value.ToString();
        string S_Number= Server.HtmlEncode(((TextBox)this.GridView1.Rows[e.RowIndex].Cells[1].Controls[0]).Text.ToString());//这里开始错了
        string S_Name = Server.HtmlEncode(((TextBox)this.GridView1.Rows[e.RowIndex].Cells[2].Controls[0]).Text.ToString());
        string Sex = Server.HtmlEncode(((TextBox)this.GridView1.Rows[e.RowIndex].Cells[3].Controls[0]).Text.ToString());
        string Birthday = Server.HtmlEncode(((TextBox)this.GridView1.Rows[e.RowIndex].Cells[4].Controls[0]).Text.ToString());
        string Nation = Server.HtmlEncode(((TextBox)this.GridView1.Rows[e.RowIndex].Cells[5].Controls[0]).Text.ToString());
        string Politics = Server.HtmlEncode(((TextBox)this.GridView1.Rows[e.RowIndex].Cells[6].Controls[0]).Text.ToString());
        string Department = Server.HtmlEncode(((TextBox)this.GridView1.Rows[e.RowIndex].Cells[7].Controls[0]).Text.ToString());
        string Addess = Server.HtmlEncode(((TextBox)this.GridView1.Rows[e.RowIndex].Cells[8].Controls[0]).Text.ToString());
        string PostalCode = Server.HtmlEncode(((TextBox)this.GridView1.Rows[e.RowIndex].Cells[9].Controls[0]).Text.ToString());
        string Phone = Server.HtmlEncode(((TextBox)this.GridView1.Rows[e.RowIndex].Cells[10].Controls[0]).Text.ToString());
        try{
            SqlConnection con=new SqlConnection(strCon);
            con.Open();
            string sql="update t_student set S_Name='" + S_Name + "',S_Number='" + S_Number + "',Sex='" + Sex + "',Birthday='" + Birthday + "',Nation='" + Nation + "',Politics='" + Politics + "',Department='" + Department + "',Addess='" + Addess + "',PostalCode='"+PostalCode+"',Phone='"+Phone+"' where S_Number="+KeyId;
            SqlCommand cmd=new SqlCommand(sql,con);
            cmd.ExecuteNonQuery();
            Response.Write("执行成功了.");
            GridView1.EditIndex=-1;
            con.Close();
        }
#5
a2567252012-11-09 17:22
后台代码
String strCon = "server=6KT3S91GBFLZ6ZK\\SQLEXPRESS;database=Stuinfo;Integrated Security=SSPI";
   
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!this.IsPostBack)
        {
            dd();
        }
    }
    private void dd()
    {
        SqlConnection con = new SqlConnection(strCon);
        con.Open();

        String sqlStr = "select * from t_student";
        SqlDataAdapter myAdapt = new SqlDataAdapter(sqlStr, con);

        DataSet ds = new DataSet();

        myAdapt.Fill(ds,"e1");
        GridView1.DataSource = ds.Tables["e1"];
        GridView1.DataBind();

        con.Close();
    }
    protected void Button2_Click(object sender, EventArgs e)
    {
        SqlConnection con = new SqlConnection(strCon);
        con.Open();
        string strSql = "Insert into t_student(S_Number,S_Name,Sex,Birthday,Nation,Politics,Department,Address,PostalCode,Phone)values('" + TextBox1.Text + "','" + TextBox2.Text + "','" + TextBox3.Text + "','" + TextBox4.Text + "','" + TextBox5.Text + "','" + TextBox6.Text + "','" + TextBox7.Text + "','" + TextBox8.Text + "','" + TextBox9.Text + "','" + TextBox10.Text + "')";
        SqlCommand cmd = new SqlCommand(strSql, con);
        cmd.ExecuteNonQuery();

        con.Close();
    }
    protected void Button3_Click(object sender, EventArgs e)
    {
        SqlConnection con = new SqlConnection(strCon);
        con.Open();

        String sqlStr = "select * from t_student";
        SqlDataAdapter myAdapt = new SqlDataAdapter(sqlStr, con);

        DataSet ds = new DataSet();

        myAdapt.Fill(ds,"e1");
        GridView1.DataSource = ds.Tables["e1"];
        GridView1.DataBind();

        con.Close();
    }
    protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
    {
        this.GridView1.EditIndex = e.NewEditIndex;
        dd();
    }
    protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
    {
        
        SqlConnection con = new SqlConnection(strCon);
        con.Open();
        string sql="delete from t_student where S_Number=" + GridView1.DataKeys[e.RowIndex].Value;
        SqlCommand cmd = new SqlCommand(sql, con);
        cmd.ExecuteNonQuery();
        Response.Redirect("default2.aspx");
    }
    protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
    {
        GridView1.EditIndex = -1;
    }
    protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
    {
        string KeyId = GridView1.DataKeys[e.RowIndex].Value.ToString();
        string S_Number= Server.HtmlEncode(((TextBox)this.GridView1.Rows[e.RowIndex].Cells[1].Controls[0]).Text.ToString());
        string S_Name = Server.HtmlEncode(((TextBox)this.GridView1.Rows[e.RowIndex].Cells[2].Controls[0]).Text.ToString());
        string Sex = Server.HtmlEncode(((TextBox)this.GridView1.Rows[e.RowIndex].Cells[3].Controls[0]).Text.ToString());
        string Birthday = Server.HtmlEncode(((TextBox)this.GridView1.Rows[e.RowIndex].Cells[4].Controls[0]).Text.ToString());
        string Nation = Server.HtmlEncode(((TextBox)this.GridView1.Rows[e.RowIndex].Cells[5].Controls[0]).Text.ToString());
        string Politics = Server.HtmlEncode(((TextBox)this.GridView1.Rows[e.RowIndex].Cells[6].Controls[0]).Text.ToString());
        string Department = Server.HtmlEncode(((TextBox)this.GridView1.Rows[e.RowIndex].Cells[7].Controls[0]).Text.ToString());
        string Addess = Server.HtmlEncode(((TextBox)this.GridView1.Rows[e.RowIndex].Cells[8].Controls[0]).Text.ToString());
        string PostalCode = Server.HtmlEncode(((TextBox)this.GridView1.Rows[e.RowIndex].Cells[9].Controls[0]).Text.ToString());
        string Phone = Server.HtmlEncode(((TextBox)this.GridView1.Rows[e.RowIndex].Cells[10].Controls[0]).Text.ToString());
        try{
            SqlConnection con=new SqlConnection(strCon);
            con.Open();
            string sql="update t_student set S_Name='" + S_Name + "',S_Number='" + S_Number + "',Sex='" + Sex + "',Birthday='" + Birthday + "',Nation='" + Nation + "',Politics='" + Politics + "',Department='" + Department + "',Addess='" + Addess + "',PostalCode='"+PostalCode+"',Phone='"+Phone+"' where S_Number="+KeyId;
            SqlCommand cmd=new SqlCommand(sql,con);
            cmd.ExecuteNonQuery();
            Response.Write("执行成功了.");
            GridView1.EditIndex=-1;
            con.Close();
        }
        catch(Exception exc){
            Response.Write(exc.Message);
        }
        dd();
    }
#6
a2567252012-11-09 17:23
前台的gridview
<asp:GridView ID="GridView1" runat="server"
            onrowdeleting="GridView1_RowDeleting"
            onrowediting="GridView1_RowEditing"
             DataKeyNames="S_Number" onrowcancelingedit="GridView1_RowCancelingEdit"
            onrowupdating="GridView1_RowUpdating">
            <Columns>
                <asp:CommandField ShowDeleteButton="True" />
                <asp:CommandField ShowEditButton="True" />
            </Columns>
        </asp:GridView>
#7
a2567252012-11-09 17:26
System.InvalidCastException: 无法将类型为“System.Web.UI.WebControls.DataControlLinkButton”的对象强制转换为类型“System.Web.UI.WebControls.TextBox”。
string S_Number= Server.HtmlEncode(((TextBox)this.GridView1.Rows[e.RowIndex].Cells[1].Controls[0]).Text.ToString());
#8
a2567252012-11-09 17:31
自己慢慢做。
#9
跳过去2012-11-09 22:27
自己一个一个功能做就好啦
#10
lock96582013-01-28 16:34
Text t = sender as Text;
GridViewRow row = t.Parent.Parent as GridViewRow;
Text t_s_num = (Text)row.FindControl("S_Number");
string s_num =  t_s_num.text.trim();
绑定改用TempleteField
1