编辑动态更改详细的gridview。 [英] Edit Dynamically changing detailed gridview.

查看:79
本文介绍了编辑动态更改详细的gridview。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个主视图和详细网格视图,其中详细的网格视图列根据主网格视图中单击的列继续更改。我想要做的是每次编辑具有不同列数的动态网格视图。我详细的Gridview是Gridview1和Master是

gvweeklysum.Below是主网格视图的片段,基于详细的gridview填充。项目模板不能作为col的数量。正在改变。请为这种情况建议可能的解决方案?



I have a master and detail gridview where the detailed gridviews column keep on changing based on the column clicked in master gridview.What i want to do is to edit the dynamic gridview having different number of column each time.My detailed Gridview is Gridview1 and Master is
gvweeklysum.Below is snippet for master gridview based on which detailed gridview is populated.The item templates does not work out as number of col. are changing.Please suggest possible solution for this scenario?

 protected void gvweeklysum_RowCommand(object sender, GridViewCommandEventArgs e)
    {

         if (e.CommandName.ToString() == "ColumnClick")
        {
            foreach (GridViewRow r in gvweeklysum.Rows)
            {
                if (r.RowType == DataControlRowType.DataRow)
                {
                    for (int columnIndex = 0; columnIndex < r.Cells.Count; columnIndex++)
                    {
                        r.Cells[columnIndex].Attributes["style"] += "background-color:White;";
                    }
                }
            }
            int selectedRowIndex = Convert.ToInt32(e.CommandArgument.ToString());
            int selectedColumnIndex = Convert.ToInt32(Request.Form["__EVENTARGUMENT"].ToString());
            gvweeklysum.Rows[selectedRowIndex].Cells[selectedColumnIndex].Attributes["style"] += "background-color:Red;";



             // get the header of gridview to check which col is clicked.
            string headertext = gvweeklysum.Columns[selectedColumnIndex].HeaderText;




            if (headertext == "Weekending")  
            {
                // null condition and a else condition for a blank col in gridview 
                string weekending = gvweeklysum.Rows[selectedRowIndex].Cells[selectedColumnIndex].Text;
                DateTime weekendingdate = Convert.ToDateTime(weekending);
                DateTime getweekbegin = weekendingdate.AddDays(-6);


                var sqlFormattedDate = weekendingdate.Date.ToString("yyyy-MM-dd HH:mm:ss");
                var weekbegin = getweekbegin.Date.ToString("yyyy-MM-dd HH:mm:ss");



                DataTable dtfrweekending = new DataTable();
                connfordata.Open();
                SqlCommand cmdfrdate = new SqlCommand("select s001_Weekending as Weekend,s001_hrsday1 as Monday,s001_hrsday2 as Tuesday,s001_hrsday3 as Wednesday,s001_hrsday4 as Thursday,s001_hrsday5 as Friday,s001_hrsday6 as Saturday,s001_hrsday7 as Sunday from dbo.s001_Timesheets where s001_weekending between  '" + weekbegin + "' and '" + sqlFormattedDate + "' ", connfordata);
                SqlDataAdapter dafrdate = new SqlDataAdapter(cmdfrdate);
                dafrdate.Fill(dtfrweekending);
                connfordata.Close();

                GridView1.DataSource = dtfrweekending;
                GridView1.DataBind();
            }
}
}

推荐答案

尝试以下文章:



http://www.c-sharpcorner.com/uploadfile/anjudidi/select-update-and-delete-data-in-a-Asp-Net-gridview-control/ [<一个href =http://www.c-sharpcorner.com/uploadfile/anjudidi/select-update-and-delete-data-in-a-Asp-Net-gridview-control/target =_ blanktitle =新窗口> ^ ]
try the following article:

http://www.c-sharpcorner.com/uploadfile/anjudidi/select-update-and-delete-data-in-a-Asp-Net-gridview-control/[^]


这篇关于编辑动态更改详细的gridview。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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