public static SPForm GetForm(this SPList list, PAGETYPE pageType) { SPForm form = null; IEnumerator enumerator = list.Forms.GetEnumerator(); SPForm current; while (enumerator.MoveNext()) { current = (SPForm)enumerator.Current; if (current.Type == pageType) { goto Success; } } return(null); Success: form = current; return(form); }
public static void SetFormJSLink(SPList list, PAGETYPE formBaseView, string jsLinkUrl) { var file = list.ParentWeb.GetFile(list.Forms[formBaseView].Url); file.CheckOut(); using (var manager = file.GetLimitedWebPartManager(PersonalizationScope.Shared)) { var webPart = manager.WebParts.OfType<ListFormWebPart>().FirstOrDefault(); if (webPart != null) { webPart.JSLink = jsLinkUrl ?? string.Empty; manager.SaveChanges(webPart); } } file.CheckIn("Added JSLink to the Form"); }
/// <summary> /// Получить ссылку к странице типа pageType элемента /// </summary> /// <param name="pageType">тип страницы</param> /// <param name="item">элемент списка</param> /// <param name="pageUrlType">тип ссылки (абсолютный/относительный)</param> /// <returns></returns> public static string GetURlForItem(PAGETYPE pageType, SPListItem item, PageUrlTypeEnum pageUrlType) { if (pageUrlType == PageUrlTypeEnum.Relative) { return GetURlForItem(pageType, item.Web.ServerRelativeUrl, item.ParentList.ID, item.ID); } else { return GetURlForItem(pageType, item.Web.Url, item.ParentList.ID, item.ID); } }
/// <summary> /// Получить ссылку к странице типа pageType элемента /// </summary> /// <param name="pageType">Тип страницы</param> /// <param name="webUrl">полный url cfqnf</param> /// <param name="listId">Ид списка</param> /// <param name="itemId">Ид элемента</param> /// <returns></returns> public static string GetURlForItem(PAGETYPE pageType, string webUrl, Guid listId, int itemId) { int pageTypeAsInt = (int)pageType; return UrlHelper.CombineUrl( webUrl, string.Format("/_layouts/listform.aspx?PageType={0}&ListId={1}&ID={2}", pageType, listId, itemId) ); }
private string getFormUrl(SPDocumentLibrary documentLibrary, PAGETYPE pageType) { return(string.Format("{0}/{1}", documentLibrary.ParentWeb.Url, documentLibrary.Forms[pageType].Url)); }