如何将编辑和删除等操作按钮添加到数据表并绑定到动态gridview [英] How to add action buttons like edit and delete to data table and bind to dynamic gridview

查看:98
本文介绍了如何将编辑和删除等操作按钮添加到数据表并绑定到动态gridview的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我添加了动态生成的gridview。我从DB获取行并将其加载到datatable中。我想为这个数据表添加编辑和删除按钮并将其绑定到gridview,以便我可以编辑和删除gridview的内容。 gridview生成多次并在循环中调用,因为需要生成时间表数周。



这是绑定数据和gridview生成的源代码:



I have added a gridview which is generated dynamically. I am fetching rows from DB and loading it into datatable. I want to add edit and delete button to this datatable and bind it to gridview so that i can edit and delete content of gridview. The gridview is generated more than one time and is called in loop as it is need to generate timesheet for weeks.

Here is source code for binding data and gridview generation:

protected void BindData(string str)
    {
        string[] startdate = getdate(str);
        int firstdate = Convert.ToInt32(startdate[1]);
        int lastdate = firstdate + 7;
        string enddate = startdate[0]+"/"+Convert.ToString(lastdate)+"/"+startdate[2];
        if (conn.State == ConnectionState.Closed)
            conn.Open();
       
        SqlCommand cmd = new SqlCommand("SELECT DISTINCT CONVERT (varchar(25), Cale_WeekDate,106) AS 'Date',Cale_DayName AS 'Day',Cale_Task8 AS '08:00 AM',Cale_Task9 AS '09:00 AM',Cale_Task10 AS '10:00 AM',Cale_Task11 AS '11:00 AM',Cale_Task12 AS '12:00 PM',Cale_Task13 AS '1:00 PM' FROM Calendar WHERE Cale_WeekDate BETWEEN '"+str+"' AND '"+enddate+"'", conn);
        DataSet ds = new DataSet();
        DataTable dt = new DataTable();
        SqlDataAdapter da = new SqlDataAdapter(cmd);
        da.Fill(ds);               
        GridView gvTimeSheet = new GridView();
        //gvTimeSheet.ID = "gvTimeSheet" + gridcount;
        gvTimeSheet.AutoGenerateColumns = false;

            dt = ds.Tables[0];
            for (int i = 0; i < dt.Columns.Count; i++)
            {
                BoundField boundfield = new BoundField();
                boundfield.DataField = dt.Columns[i].ColumnName.ToString();
                boundfield.HeaderText = dt.Columns[i].ColumnName.ToString();
                gvTimeSheet.Columns.Add(boundfield);
            }
            gvTimeSheet.DataSource = dt;
            gvTimeSheet.DataBind();
            gvTimeSheet.Width = 600;
            gvTimeSheet.HeaderStyle.CssClass = "header";
            gvTimeSheet.RowStyle.CssClass = "rowstyle";

            Panel1.Controls.Add(gvTimeSheet);
            HtmlGenericControl linebreak = new HtmlGenericControl("br");            
            Panel1.Controls.Add(linebreak);

        
    }

推荐答案

只需添加 RowEditing RowDeleting 事件和相关控件动态,就像你为列做的那样。



看看这些事件的官方文档,看看需要在标记上添加什么。然后尝试在你正在做的代码后面生成标记代码。
Just add the RowEditing, RowDeleting Events and related controls dynamically as you are doing it for columns.

Just see the official documentation of these events and see what needs to be added on markup. Then try to generate the markup codes in code behind as you are already doing.


这篇关于如何将编辑和删除等操作按钮添加到数据表并绑定到动态gridview的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆