SharePoint 2010 WebPart персонализировать макет - PullRequest
1 голос
/ 20 августа 2011

У меня есть домашняя страница в Интранете. Он имеет более 15 веб-частей (новости, погода и т. Д.). Я хочу разрешить пользователям настраивать страницу, перемещая веб-части или удаляя их. В настоящее время я не позволяю им видеть ленту вверху, поэтому у них нет доступа к кнопке «Изменить страницу». Я вытащил его из ленты

<a unselectable="on" href="javascript:;" onclick="return false;" class="ms-cui-ctl-large" aria-describedby="Ribbon.WebPartPage.Edit.Edit.Menu.Actions.Edit_ToolTip" mscui:controltype="Button" role="button" style="height: auto;" id="Ribbon.WebPartPage.Edit.Edit-SelectedItem">
<span unselectable="on" class="ms-cui-ctl-largeIconContainer">
    <span unselectable="on" class=" ms-cui-img-32by32 ms-cui-img-cont-float">
      <img unselectable="on" alt="" src="/_layouts/1033/images/formatmap32x32.png" style="top: -160px; left: -96px;">
    </span>
</span>
<span unselectable="on" class="ms-cui-ctl-largelabel" style="height: auto;">Edit<span unselectable="on"> 
</span>Page</span>
</a>

К сожалению, это не работает. Есть мысли?

Я буду делать то же самое с кнопкой «Остановить редактирование».

Ответы [ 2 ]

0 голосов
/ 23 августа 2011

Я наконец-то нашел ответ на этот вопрос. Это было очень просто после того, как был определен вызов JS. Я считаю, что это должно быть только для веб-страницы.

Чтобы перевести страницу в режим редактирования для Персонализация с помощью вызова Javascript:

ChangeLayoutMode(true); // how simple is that??

Чтобы остановить редактирование страницы с помощью вызова Javascript:

MSOLayout_ToggleLayoutMode(); // same as given in the other post

Режим редактирования «Стоп», на мой взгляд, одинаков для всех страниц, независимо от того, является ли это персональной страницей, страницей всех веб-частей и т. Д.

0 голосов
/ 23 августа 2011

Согласно этому сообщению: http://artykul8.com/2011/03/useful-sharepoint-shortcuts/ хитрость заключается в использовании функции MSOLayout_ToggleLayoutMode(); javascript.

Согласно комментарию на той же странице, в SP2010, эта функция javascript доступна, только если у вас уже есть веб-часть на странице. Поведение, которое я наблюдал, отличается от этого , учитывая, что для меня эта функция работала, только когда страница уже находилась в режиме редактирования (и работала, даже если на страницу не была добавлена ​​веб-часть).

Мне удалось найти файл javascript, в котором определена эта функция, то есть ie55up.js.Вы можете загрузить его на своей главной странице, выполнив:

<SharePoint:ScriptLink language="javascript" name="ie55up.js" OnDemand="false" runat="server" />

Информацию о том, как создать веб-элемент управления, использующий эту функцию javascript, см. Здесь: http://www.codeproject.com/KB/sharepoint/SwitchWPMode.aspx

Надеюсь, это поможет

...