Изменения «Персонализировать эту страницу» в личном представлении не сохраняются - sharepoint - PullRequest
1 голос
/ 23 июня 2009

Отредактировано - оригинальный вопрос ниже.

У меня есть собственный список (установленный из функции), который в основном представляет собой календарь. Представления по умолчанию для месяца, недели и дня используют пользовательскую веб-часть, которая внедряет JavaScript на страницу с целью добавления цветов фона.

Пользователи, желающие добавить личный вид, могут сделать это, однако новые личные виды по умолчанию не будут иметь настраиваемую веб-часть раскраски на странице. Пользователь может выбрать «Персонализация этой страницы» в меню приветствия и добавить веб-часть, но после нажатия «Выйти из режима редактирования» веб-часть исчезнет.

Почему это происходит и как мне заставить это работать?


У меня есть пользовательская веб-часть, которая внедряет некоторые теги скрипта на страницу. Эта веб-часть предназначена для использования в настраиваемом списке «Календарь», чтобы придать фоновый цвет событиям различных категорий (настраиваемое поле). Это прекрасно работает для общих представлений, но никак не для личных представлений.

Если я создаю персональное представление и основываю его на представлении по умолчанию Calendar.aspx, а затем выбираю «Изменить эту страницу» в меню «Действия сайта», календарь исчезает. Если я добавляю пользовательскую веб-часть на страницу и выбираю «Изменить эту веб-часть», я получаю «Веб-часть, которую вы пытались изменить, либо недействительна, либо удалена другим пользователем».

Можно ли добавить веб-части в личные просмотры? Есть ли лучший способ добиться этой пользовательской окраски фона?

ОБНОВЛЕНИЕ: URL личного представления выглядит примерно так: ... / Lists / CalendarName / PersonalViews.aspx? ShowWebPart = {GUID}. Если я удаляю строку запроса, календарь не отображается, но если я проверяю содержимое страницы, веб-часть фактически отображает содержимое! Он не рендерится, если присутствует ShowWebPart = {GUID}. Используя отладчик, я вижу, что он вообще не загружается, насколько я могу судить.

ОБНОВЛЕНИЕ 2: Больше странностей. Если я настраиваю эту страницу, выбирая «Персонализировать эту страницу» в меню приветствия, она позволяет мне добавить свою пользовательскую веб-часть, и она выглядит великолепно, но только до тех пор, пока я не нажму «Выйти из режима редактирования» и моя пользовательская веб-часть снова исчезнет.

1 Ответ

1 голос
/ 24 июня 2009

Создайте свой вид, сделайте его личным.

Персонализируйте страницу, добавив свою веб-часть.

Затем выйдите из режима редактирования. В строке запроса удалите часть &ShowWebPart=GUID. Ваша личная веб-часть должна появиться.

Персональные представления имеют GUID. Селектор в представлении списка использует строку запроса, чтобы показать, какое представление отображать, следовательно, параметр ShowWebPart. Я не верю, что есть способ переопределить поведение в селекторе списка, чтобы не использовал этот параметр ShowWebPart без особых усилий.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...