אודות | מאמרים | שירותים | תוכנה | איש קשר

התאמה אישית של כתובת ListFormWebPart מחזירה

ובכן, אני לא יודע זה הטריק, והיום חבר לעבודה הצביע לי עליו, אשר הלוואי הייתי יודע בעבר בעת כתיבת WebParts ממשק מותאם אישית אינטראקציה עם רשימות SharePoint.

בוא נגיד שאתה פיתוח WebPart כי אינטראקציה עם רשימה, כמו משהו המציגה פריטי הרשימה שלך בצורה מסודרת כי היא תורמת מה נתון הדרישות שלך הם תוכנה. לדוגמה, הייתי כותב WebPart בשבוע האחרון או כך נבנה אוסף של אובייקטים SPView ולא אישית ערעור על המתרחש תצוגה מותאמת אישית בלוח השנה סוג כך שנוכל בעצם קוד צבע האירועים בלוח שנה כך שזה היה יותר דומה ל-Outlook. זה עשה את זה קל עבור המשתמש אז להציג אותם אירועים מקובצים כי הם יכולים לגלוש על ידי צבע.
WebPart על זה, רציתי להציע למשתמשים שלי דרך להוסיף פריטים ישירות בתוך הרשימה הכותרת של WebPart, בהנחה שיש להם את הזכויות אפילו רואה קישור זה. לכן, הייתי צריך לעטוף את הקישור לדף NewForm.aspx עם המחאה בוליאניות באמצעות SPListItem.EffectiveBasePermissions רכוש לקצור את חברות קבוצת משתמשים המדיניות הנוכחית, ולאחר מכן להשתמש ספירה SPBasePermissions כדי לקבל מה הן הפעולות המשפטי המשתמש הנוכחי כי הוא מסתכל WebPart. הדבר לזכור WebPart היה על זה לא הייתי צריך אותו שם ListFormWebPart בדרך כלל יהיה, זה קיים ספרייה דפים. כך, כאשר משתמש נוסף פריט חדש, הם היו מנותב חזרה להציג את רשימת ברירת המחדל של הטופס, זה קרה עם כל הטינופת פעולות בעת עבודה עם הרשימה.

אני צריכה לעשות את זה מהר (5 דקות) אז אני רק צ 'אק דרך זו של קוד כדי להוסיף את הקישור פריט חדש בכותרת (זה כמובן לא לגמרי קוד Best Practice אבל זה לא הנושא של רשומה זו):

# C:
  1. r00tUrl מחרוזת;
  2. Splist SPList;
  3. Context ) . RootWeb CurWeb SPWeb = SPControl. GetContextSite (context). RootWeb
  4. = r00tUrl curWeb. URL;
  5. "<your list>" ] ; = splist curWeb. רשימות [ "<your list>"];
  6. splist != null ) אם (splist! = null)
  7. (
  8. splist. EffectiveBasePermissions & SPBasePermissions. AddListItems ) == SPBasePermissions. AddListItems ; canAddItem bool = (EffectiveBasePermissions splist. & SPBasePermissions. AddListItems) SPBasePermissions ==. AddListItems;
  9. canAddItem ) אם (canAddItem)
  10. (
  11. " Str. AppendFormat ( "
  12. + "Add New Event" + "</a>" , r00tUrl ) ; "+" <Xhref = (0) / רשימות / <your list> / NewForm.aspx> "+" הוסף אירוע "+" </ a> ", r00tUrl);
  13. "" ) ; Str. AppendFormat ( "");
  14. )
  15. )

אבל כך היה לנתב מחדש את המשתמש כדי להציג את ברירת המחדל של הרשימה אחרי הוסיף את הפריט. גיליתי לך להוסיף שרשרת קטנה שאילתת מקור לסוף את כתובת האתר כדי לנתב מחדש את המשתמש חזרה אל דף מותאם אישית, כמו זה? Source = "/ דפי / CustomPage.aspx

לכן, הקוד החדש שלי נראה כך:

# C:
  1. r00tUrl מחרוזת;
  2. Splist SPList;
  3. Context ) . RootWeb CurWeb SPWeb = SPControl. GetContextSite (context). RootWeb
  4. = r00tUrl curWeb. URL;
  5. "<your list>" ] ; = splist curWeb. רשימות [ "<your list>"];
  6. splist != null ) אם (splist! = null)
  7. (
  8. splist. EffectiveBasePermissions & SPBasePermissions. AddListItems ) == SPBasePermissions. AddListItems ; canAddItem bool = (EffectiveBasePermissions splist. & SPBasePermissions. AddListItems) SPBasePermissions ==. AddListItems;
  9. canAddItem ) אם (canAddItem)
  10. (
  11. " Str. AppendFormat ( "
  12. + "Add New Event" + "</a>" , r00tUrl ) ; "+" <Xhref = (0) / רשימות / <your list> / NewForm.aspx? Source = "/ דפי / Calendar.aspx>" + "הוסף אירוע" + "</ a>", r00tUrl);
  13. "" ) ; Str. AppendFormat ( "");
  14. )
  15. )

Works great!

  • שתף / הפוך

הודעות קשורות:

  1. לבדוק אם למשתמש יש SPBasePermission ב SPList אובייקט
  2. מרובים SPListItemCollection שאילתה עם SPFieldLookupValue
  3. שליטה SPField לתצוגה
  4. שיבוט רשימת SharePoint אבטחה (Freeware כלי האבטחה)
  5. בתוקף שהוקלדו אוספים SharePoint רשימה לפי סוג תבנית


4 תגובות »

  1. [...] SharePoint: התאמה אישית של כתובת ListFormWebPart מחזירה [...]

    Pingback על ידי 8 קשר היום (2007/08/07) - 7 באוגוסט, 2007 @ 8:24

  2. [...] התאמה אישית ListFormWebPart כתובת מחזירה [...]

    Pingback על ידי קישורים (8/7/2007) «סטיב Pietrek של SharePoint Stuff - 7 באוגוסט, 2007 @ 5:33

  3. הי,
    אני עובד על פרויקט לוח שנה של SharePoint הבעיה שלי היא שאני רוצה לשים קישור בלוח השנה שלי כי לוקח לדף אינטרנט אחר או באתר אחר, אני חדש בתחום זה ומחפשים פתרון כלשהו על בעיה זו. כל woulb לעזור להיות apprecaiting

    תגובה על ידי Heena - 14 במאי, 2008 @ 4:03

  4. אני זקוק לעזרה על שינוי המראה של בצורת רשימה של פריט חדש (NewItem.aspx). אני רוצה להפוך את אזור להקליד טקסט וניהול, המשמשת עבור רשימות בדיקת מידע, כדי להיות רחב יותר כדי לבטל את הצורך פס גלילה אופקית (צריך יותר עמודות).
    תודה מראש.
    בברכה,

    תגובה על ידי Doru - 13 באפריל, 2009 @ 3:07

RSS Feed להערות על זה לכתוב. TrackBack-URL

השאירו תגובה