2016-09-02 4 views
0

J'essaie d'ajouter un lien vers un NotesDocument, qui devrait avoir un nom d'affichage différent du lien réel.NotesDocument Ajouter HotSpot/Hyperlink en tant que NotesRichtextItem

Comment puis-je faire cela via C# -code? Je ne peux pas utiliser NotesMIMEEntity.

C'est ce que j'ai fait jusqu'à présent. Bu Je ne peux pas comprendre comment changer l'étiquette affichée du lien dans Google par exemple

NotesSession nSession = new Domino.NotesSession(); 
nSession.Initialize(pw); 
NotesDatabase nDatabase = nSession.GetDatabase("SERVER", "names");     
Domino.NotesDocument nDocument = nDatabase.CreateDocument(); 

nDocument.ReplaceItemValue("Subject", "Test"); 

NotesRichTextItem rtItem;        
rtItem= nDocument.CreateRichTextItem("Body"); 
rtItem.AppendText("http://google.com"); //I cannot see a "AppendLink" Method or sth. alike 
nDocument.Send(false,"[email protected]"); 

Répondre

1

Malheureusement, il n'y a aucun moyen que je sache le faire avec des liens arbitraires. Non sans utiliser MIME, que vous avez dit ne pas pouvoir utiliser, ou DXL, ou une API tierce comme MIDAS. Mais si vous connaissez à l'avance le lien exact que vous voulez ajouter, alors la technique que j'ai utilisée est de créer un formulaire pour un document de configuration avec un champ clé et un champ de texte riche, que j'appellerai richTextLink . Créez manuellement un document avec ce formulaire, en lui donnant la clé LinkToGoogle, et utilisez le Create - Hotspot (ou Créer - Hyperlien dans Notes 9) pour créer votre lien dans le champ de texte enrichi. Créez une vue pour vos documents de configuration, avec la première colonne triée par le champ clé. Ensuite, dans votre code, ouvrez cette vue, utilisez cfgDoc = view.getDocumentByKey("LinkToGoogle") pour obtenir le document, puis utilisez linkRTItem = cfgDoc.getFirstItem("richTextLink") et rtItem.AppendRTItem(linkRTItem).

+1

Je vais essayer la semaine prochaine, dès que je serai de retour au bureau. –