protected void SetSnapTemplate() { foreach (DictionaryEntry dic in SnapManager.GetInstance().SnapCollection) { SnapModel snapModel = SnapManager.GetInstance().SnapCollection[dic.Key.ToString()]; if (string.IsNullOrEmpty(snapModel.ViewControl)) { continue; } UmcContentsCommonPage template = (UmcContentsCommonPage)LoadControl(snapModel.ViewControl.ToString()); template.SnapModel = snapModel; //if (FindControl("ph_" + snapModel.ID.ToString()) == null) return; //((PlaceHolder)FindControl("ph_" + snapModel.ID.ToString())) // .Controls.Add(template); if (FindControl("phSnaps") == null) { return; } ((PlaceHolder)FindControl("phSnaps")).Controls.Add(template); if (!IsPostBack) { //if (FindControl("snap_" + snapModel.ID.ToString()) == null) return; ComponentArt.Web.UI.Snap snapTemplate = (ComponentArt.Web.UI.Snap)template.FindControl("snap_" + snapModel.ID.ToString()); SnapManager.GetInstance().LoadSnap(snapTemplate, Context); } } }
/// <summary> /// 쿠키에서 Snap 정보를 가져온다. /// </summary> /// <param name="snap"></param> /// <param name="context"></param> public void LoadSnap(ComponentArt.Web.UI.Snap snap, HttpContext context) { string controlName = snap.ID; HttpCookie cookie = context.Request.Cookies[controlName + "_option"]; if (cookie == null) { return; } snap.IsCollapsed = bool.Parse(cookie.Values[controlName + "_coolapsed"]); snap.CurrentDockingContainer = cookie.Values[controlName + "_dockingContainer"].ToString(); snap.CurrentDockingIndex = int.Parse(cookie.Values[controlName + "_dockingIndex"]); }
/// <summary> /// Snap을 쿠키에 저장한다. /// </summary> /// <param name="snap"></param> /// <param name="context"></param> public void SaveSnap(ComponentArt.Web.UI.Snap snap, HttpContext context) { string controlName = snap.ID; HttpCookie cookie = new HttpCookie(controlName + "_option"); cookie.Values.Add(controlName + "_coolapsed", snap.IsCollapsed.ToString()); cookie.Values.Add(controlName + "_dockingContainer", snap.CurrentDockingContainer.ToString()); cookie.Values.Add(controlName + "_dockingIndex", snap.CurrentDockingIndex.ToString()); DateTime nowDateTime = DateTime.Now; cookie.Expires = nowDateTime.AddDays(30); context.Response.AppendCookie(cookie); }