2014-01-26 3 views
0

내 질문 : 저는 C# 코드에 있습니다. 나는 notesdocument를 얻었습니다. 문서에서 notesrichtextitem (direcly)을 가져올 수 없습니다. 나는 이제 메모 항목을 얻는다. 그래서 notesrichtextitem을 direcly로 가져 오거나 notesitem을 notesrichtextitem으로 변환해야합니다.NotesDocument에서 NotesRichTextItem을 직접 가져 오기

을 새로 추가하거나 개의 첨부 파일을 서식있는 텍스트 입력란에 추가하고 싶습니다.

다음은 연꽃 문서에 첨부 파일을 추가하는 방법에 대한 정보입니다. 작동하지만 여전히이 코드를 싫어합니다. 나에게 직접 해보아주세요!

로터스의 notesrichtext 항목으로 작업하고 있지만 프로젝트에서 C#으로 코딩해야하고 notesrichtextitem에 연결하는 것이 큰 문제입니다. 실제로 문서 (연꽃)에서 notesrichtextitem (C#의 개체)으로 개체를 가져올 수는 없습니다. 그래서 나는 연꽃을 과도하게 넘기위한 새로운 해결책을 찾았습니다!^__^@ !.

나는 C#의 코드입니다.; .net 2.0을 사용; Interop.Domino 1.2.0.0을 사용하여; VS 2010;

내 데모 코드 (그것은 노력하고 있습니다)입니다 : 당신이 볼로

//start demo code 
     NotesItem rtf2 = dockey.GetFirstItem(RTfield.ToString()); 
     if (rtf2 != null) 
     { 
      dockey.RemoveItem(RTfield.ToString()); 
     } 
     // just 1 item is insert; 
     NotesRichTextItem rtf = dockey.CreateRichTextItem(RTfield.ToString()); 
     rtf.EmbedObject(EMBED_TYPE.EMBED_ATTACHMENT, "", Dfilepath); // set attachment to richtextfield 
     dockey.Save(true, false); 
//end demo code. 

이 단계는 다음과 같습니다

  1. getfirstitem (즉,이 NOTESITEM를 반환) =>를 내가 을 더 기운 다 notesrichtextitem을 잡고 EmbedObject를 사용하여 첨부 파일을 직접 추가 할 수있는 모든 것.
  2. 삭제
  3. 는 notesitem
  4. 가 notesrichtextitem은 당신이 가진 객체로 원하는 작업을 수행 (같은 이름) ​​새로운 CreateRichTextItem을 만들 존재한다.

내 솔루션을 사용하면 모든 사람들이 notesrichtextitem을 활용할 수 있습니다. 서식있는 텍스트 필드에 대해 더 많이 이해하려고합니다. 문서 객체의 notesrichtextitem을 사용하여 직접 작업하는 좋은 해결책이 있다면 알려주십시오.

답변

0

NotesRichTextItem 클래스는 NotesItem 클래스를 상속합니다. NotesItems의 모든 속성 및 메서드 외에도 일부 RichText 관련 속성 및 메서드가 있습니다.

GetFirstItem()NotesItem 개체를 반환하고 RichText 항목의 경우 NotesRichTextItem 개체를 "자동으로"반환합니다. 그래서 다음과 같이 쓸 수 있습니다 :

NotesRichTextItem rtf = dockey.GetFirstItem(RTfield.ToString()); 
rtf.EmbedObject(EMBED_TYPE.EMBED_ATTACHMENT, "", Dfilepath); // set attachment to richtextfield 
dockey.Save(true, false); 

Interop.Domino는 COM을 통해 Notes 클래스를 사용합니다. 따라서 Notes 클래스는 LotusScript과 거의 비슷하게 작동합니다. GetFirstItem()의 결과를 (NotesRichTextItem)으로 전송해야 할 수도 있습니다.

+0

나는 (비주얼 스튜디오가 설치되어 있지 않다는 것을) 확인하기 위해 잘못된 컴퓨터를 사용하고 있지만 rtf에 대한 할당에서 (NotesRichTextItem)에 대한 캐스트가 필요하다고 생각합니다. 내가 틀렸다면 나를 바로 잡아주세요. –

+0

@ 리차드 : 귀하의 의견을 주셔서 감사합니다 - 내 대답에 캐스팅을 추가 - 여기도 테스트 할 수 없습니다. –

관련 문제