вторник, 5 июля 2011 г.

Edit ListItem in popup window from Silverlight or Js in Sharepoint 2010

Добрый день!
Сегодня поговорим о том, как редактировать элементы списка из Silverlight приложения.
 Нас интересует именно встроенный редактор текста в Sharepoint который позволяет создавать ссылки, загружать картинки, рисовать таблицы и прочие красивые вещи. Но нам ведь не хотелось бы давать доступ на страницу списка для обычных пользователей, поэтому я вам расскажу как сделать это просто и красиво.

Для начала выясним что такое popup окно в sharepoint 2010, это красивое всплывающее окно построенное на js. Пример вы можете увидеть когда открываете редактирование элемента списка или просмотр элемента.
string js =
                    var options = {
url: '_layouts/listform.aspx?PageType=6&ListId='IdList'&ID='IdListItem',
                    title: 'Редактирование элемента',
                    allowMaximize: true,
                    showClose: true,
                    width: 625,
                    height: 525,
                    showMaximized: true,
                    dialogReturnValueCallback: silentCallback};
                    function open() {SP.UI.ModalDialog.showModalDialog(options);}
                   function silentCallback(dialogResult, returnValue) {alert('I am here');}
                    function refreshCallback(dialogResult, returnValue) {
                    SP.UI.Notify.addNotification('Operation Successful!');                             SP.UI.ModalDialog.RefreshPage(SP.UI.DialogResult.OK);
                    }
              HtmlWindow htmlWindow = HtmlPage.Window;
                htmlWindow.Eval(js);
 И нужно просто вызвать функцию  open();
Для выполнения функции по возврату назад я использую  silentCallback(), в которую можно передать параметр и с которой можно вызвать метод Silverlight приложения(как это делать я писал в блоге).
Вот так просто и красиво вы получите Sharepoint редактор текста на своей странице.
И не нужно использовать свои решения и создавать красивые редакторы на которые  могут уйти недели времени.








Комментариев нет:

Отправить комментарий