<pre lang="HTML">
<asp:GridView runat="server" ID="grdlabel" AutoGenerateColumns="false" OnRowDataBound="grdlabel_RowDataBound" DataKeyNames="label,labelName,labelValue"> <Columns> <asp:TemplateField HeaderText="ILabel"> <ItemTemplate> <asp:TextBox runat="server" ReadOnly="true" ID="txtlabel"></asp:TextBox> </ItemTemplate> </asp:TemplateField> <asp:TemplateField HeaderText="LabelName"> <ItemTemplate> <asp:TextBox runat="server" ID="txtLabelName"></asp:TextBox> </ItemTemplate> </asp:TemplateField> <asp:TemplateField HeaderText="DefaultValue"> <ItemTemplate> <asp:TextBox runat="server" ID="txtDefaultValue"></asp:TextBox> </ItemTemplate> </asp:TemplateField> </Columns> </asp:GridView> <asp:Button ID="Button1" runat="server" Text="Save to DB" OnClick="Button1_Click" /> <asp:Button ID="Button2" runat="server" Text="Bind Data From DB" OnClick="Button2_Click" />
#region ... variable... List<data> lstData = null; List<data> lstDataToSave = null; #endregion protected void Page_Load(object sender, EventArgs e) { try { if (!IsPostBack) { lstData = new List<data>(); for (int i = 1; i <= 10; i++) { data oData = new data(); oData.label = "I" + i; oData.labelName = ""; oData.labelValue = ""; lstData.Add(oData); oData = null; } grdlabel.DataSource = lstData; grdlabel.DataBind(); } } catch (Exception ex) { } } protected void grdlabel_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { TextBox txtLabel = e.Row.FindControl("txtlabel") as TextBox; txtLabel.Text = grdlabel.DataKeys[e.Row.RowIndex][0].ToString(); TextBox txtLabelName = e.Row.FindControl("txtLabelName") as TextBox; txtLabelName.Text = grdlabel.DataKeys[e.Row.RowIndex][1].ToString(); TextBox txtDefaultValue = e.Row.FindControl("txtDefaultValue") as TextBox; txtDefaultValue.Text = grdlabel.DataKeys[e.Row.RowIndex][2].ToString(); if (e.Row.RowIndex == 7) { txtLabelName.Text = "FixName1"; txtLabelName.ReadOnly = true; txtDefaultValue.Text = grdlabel.DataKeys[e.Row.RowIndex][2].ToString(); } if (e.Row.RowIndex == 8) { txtLabelName.Text = "FixName2"; txtLabelName.ReadOnly = true; txtDefaultValue.Text = grdlabel.DataKeys[e.Row.RowIndex][2].ToString(); } } } protected void Button1_Click(object sender, EventArgs e) { lstDataToSave = new List<data>(); try { foreach (GridViewRow row in grdlabel.Rows) { TextBox txtLabel = row.FindControl("txtlabel") as TextBox; TextBox txtLabelName = row.FindControl("txtLabelName") as TextBox; TextBox txtDefaultValue = row.FindControl("txtDefaultValue") as TextBox; if (txtLabelName.Text != "") { data oData = new data(); oData.label = txtLabel.Text; oData.labelName = txtLabelName.Text; oData.labelValue = txtDefaultValue.Text; lstDataToSave.Add(oData); } } Session["DataToSave"] = lstDataToSave; } catch (Exception ex) { } } protected void Button2_Click(object sender, EventArgs e) { List<data> lstData = new List<data>(); lstData = (List<data>)Session["DataToSave"]; try { grdlabel.DataSource = lstData; grdlabel.DataBind(); } catch (Exception ex) { } }
var newList = list.Where(x => !string.IsNullOrWhiteSpace(x.SomeProperty)).ToList();
var
This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)