Mostrar mensagem personalizada em "Novo Site" diálogo do silverlight
-
10-12-2019 - |
Pergunta
Eu gostaria de exibir uma mensagem personalizada no topo do "Novo Site" da janela de diálogo, no entanto, pois é o Silverlight eu não tenho certeza se isso é mesmo possível.
Eu pensei em usar javascript para highjack o "Novo Site", clique em evento da "Ações do Site" no menu antes de a caixa de diálogo é exibida e mostra a mensagem aqui.Em seguida, quando o utilizador clica em OK abra o diálogo com o controle do Silverlight e proceder como normal.Mas isso parece muito um hack e, possivelmente, não vale a pena investigar mais.Também não vai funcionar se você criar a web através de "Gerenciar a Estrutura do Site".
Existe uma maneira mais fácil para fazer isso?Como um mecanismo no SharePoint semelhante a como adicionar ações personalizadas para o menu ações do site?A mensagem não tem de ser um pop-up, apenas alguma forma de exibição de texto personalizado como o utilizador tenta criar uma nova web.
Solução
Eu acho que menos "doloroso" abordagem para o que você está modificando v4 masterpage.Ele contém SharePoint:SiteActions
controle com SharePoint:MenuItemTemplate runat="server" id="MenuItem_CreateSite"
.
Você pode atualizar o código de ClientOnClickScriptContainingPrefixedUrl
para efectuar a sua lógica, por exemplo, mostrando a mensagem de confirmação como eu faço isso:
<SharePoint:MenuItemTemplate runat="server" id="MenuItem_CreateSite"
Text="<%$Resources:wss,siteactions_createsite%>"
Description="<%$Resources:wss,siteactions_createsitedesc%>"
ImageUrl="/_layouts/images/newweb32.png"
MenuGroupId="200"
Sequence="230"
UseShortId="true"
ClientOnClickScriptContainingPrefixedUrl="if (confirm('Are you sure?')) { SP.UI.ModalDialog.showModalDialog({url:'~site/_layouts/AddGallery.aspx', title: 'Create', width: 1050, height: 600}); }"
PermissionsString="ManageSubwebs,ViewFormPages"
PermissionMode="All" />
Outras dicas
Não tanto quanto eu sei.Como você comentarmente comentou, este é um componente Silverlight.Os componentes do Silverlight são embrulhados em arquivos CAB e você não tem nenhuma maneira de alterá-la.Além disso, você não pode hackear se quisesse usar o JavaScript.JS e Silverlight são dois componentes totalmente diferentes.O JS é usado para modificar os elementos do DOM.O Silverlight é um objeto no DOM, mas usa um plugin de cliente que você não tem controle.Se você realmente queria, eu sugiro que você crie seu próprio componente Silverlight que imita a janela do Silverlight existente para criar sites / listas / páginas e conectar-se às ações do site> Mais opções link.