//protected void btnCancel_Click(object sender, EventArgs e) //{ // ClearPageData(); // Session["SelectedSegmentDetail"] = null; //} protected void gvSegmentDetails_RowDataBound(object sender, GridViewRowEventArgs e) { try { if (e.Row.RowType == DataControlRowType.DataRow) { SegmentDetailTreeHelper rowItem = (SegmentDetailTreeHelper)e.Row.DataItem; //((Label)e.Row.FindControl("lblIndent")).Width = Unit.Pixel(rowItem.Level * 30); //((Label)e.Row.FindControl("lblDetailCode")).Text = rowItem.DetailCode; int width = rowItem.Level * 30; string strHTML = string.Empty; if (rowItem.ChildCount > 0) { if (SelectedNodes.Contains(rowItem.SegmentDetailID)) { strHTML = "<label style=\"width:" + (width + 10).ToString() + "px;vertical-align:middle;\"><i class=\"ace-icon fa fa-minus-square pull-right\"></i></label> "; } else { strHTML = "<label style=\"width:" + (width + 10).ToString() + "px;vertical-align:middle;\"><i class=\"ace-icon fa fa-plus-square pull-right\"></i></label> "; } } else { strHTML = "<label style=\"width:" + (width + 10).ToString() + "px;vertical-align:middle;\"><i></i></label> "; } LinkButton btnExpand = ((LinkButton)e.Row.FindControl("btnExpand")); btnExpand.Text = "<div>" + strHTML + rowItem.DetailCode + "</div>"; //disable Add-Child if AccountCodeFlag raise if (((Segment)Session["SelectedSegment"]).AccountCodeFlag == true) { LinkButton linkButton = ((LinkButton)e.Row.FindControl("lbAddChild")); linkButton.Attributes.Remove("href"); linkButton.Attributes.CssStyle[HtmlTextWriterStyle.Color] = "gray"; linkButton.Attributes.CssStyle[HtmlTextWriterStyle.Cursor] = "default"; linkButton.ToolTip = "Add Child Disabled."; if (linkButton.Enabled != false) { linkButton.Enabled = false; } if (linkButton.OnClientClick != null) { linkButton.OnClientClick = null; } } if (rowItem.ParentDetailID != 0) { ((LinkButton)e.Row.FindControl("lbAddItem")).Visible = false; } if (rowItem.ParentDetailID == 0) { ((LinkButton)e.Row.FindControl("lbMakeRoot")).Visible = false; } if (rowItem.SegmentDetailID == 0) { ((LinkButton)e.Row.FindControl("btnExpand")).Visible = false; ((LinkButton)e.Row.FindControl("lbEdit")).Visible = false; ((LinkButton)e.Row.FindControl("lbDelete")).Visible = false; ((LinkButton)e.Row.FindControl("lbCut")).Visible = false; ((LinkButton)e.Row.FindControl("lbPaste")).Visible = false; ((LinkButton)e.Row.FindControl("lbMakeRoot")).Visible = false; ((LinkButton)e.Row.FindControl("lbAddChild")).Visible = false; } if (Session["SelectedSegmentDetail"] != null && ((SegmentDetail)Session["SelectedSegmentDetail"]).SegmentDetailID == rowItem.SegmentDetailID) { e.Row.Style["background-color"] = "skyblue"; } var span = ((System.Web.UI.HtmlControls.HtmlGenericControl)e.Row.Cells[2].FindControl("CustomStatus")); if (rowItem.Status == "A") { span.InnerHtml = "<span class=\"label label-sm label-success arrowed-in arrowed-in-right tooltip-success\" " + "data-rel=\"tooltip\" data-placement=\"right\" title=\"Active Status. All operation has been enabled.\">Active</span>"; } else if (rowItem.Status == "D") { span.InnerHtml = "<span class=\"label label-sm label-danger arrowed-in arrowed-in-right tooltip-error\" " + "data-rel=\"tooltip\" data-placement=\"right\" title=\"Inactive Status. All operation has been disabled.\">Inactive</span>"; } } } catch (Exception ex) { ((SiteMaster)this.Master).ShowMessage("Error", "An error occurred", ex, true); } }
private void CreateTreeData() { try { SelectedNodes = (List <int>)Session["SelectedNodes"]; List <SegmentDetail> data = (List <SegmentDetail>)Session["SegmentDetailsData"]; List <SegmentDetailTreeHelper> TreeData = new List <SegmentDetailTreeHelper>(); if (data.Count > 0) { TreeData = data.Where(x => x.ParentDetailID == 0).OrderBy(x => x.DetailCode).Select(x => new SegmentDetailTreeHelper() { SegmentDetailID = x.SegmentDetailID, SegmentID = Convert.ToInt32(x.SegmentID), DetailCode = x.DetailCode, DetailDesc = x.DetailDesc, ParentDetailID = Convert.ToInt32(x.ParentDetailID), Status = x.Status, Level = 0, ChildCount = data.Where(y => y.ParentDetailID == x.SegmentDetailID).Count() }).ToList(); if (SelectedNodes == null || SelectedNodes.Count == 0) { Session["SelectedNodes"] = new List <int>(); SelectedNodes = new List <int>(); } else { for (int i = 0; i < TreeData.Count; i++) { if (SelectedNodes.Contains(TreeData[i].SegmentDetailID)) { foreach (SegmentDetail sd in data.Where(x => x.ParentDetailID == TreeData[i].SegmentDetailID).OrderByDescending(x => x.DetailCode)) { SegmentDetailTreeHelper objSH = new SegmentDetailTreeHelper() { SegmentDetailID = sd.SegmentDetailID, SegmentID = Convert.ToInt32(sd.SegmentID), DetailCode = sd.DetailCode, DetailDesc = sd.DetailDesc, ParentDetailID = Convert.ToInt32(sd.ParentDetailID), Status = sd.Status, Level = TreeData[i].Level + 1, ChildCount = data.Where(y => y.ParentDetailID == sd.SegmentDetailID).Count() }; TreeData.Insert(i + 1, objSH); } } } } } Session["SegmentDetailsTree"] = TreeData; BindGrid(); } catch (Exception ex) { ((SiteMaster)this.Master).ShowMessage("Error", "An error occurred", ex, true); } }