2011-02-18 1 views
4

에 richtextbox에 내장 리소스 .rtf 파일로드 좋아요. 따라서 서식있는 텍스트 상자에 포함 된 rtf를로드하는 방법에 대해 읽고 폼이로드 될 때이를 수행하려고합니다. 폼은 기본 폼이 아니며 컨트롤을 클릭 할 때로드되는 두 번째 폼입니다. RTF 파일은 리소스로 보여줍니다 솔루션 탐색기에서로드 할 때 C#

private void Credits_Load(object sender, EventArgs e) 
{ 
    Assembly creditAssm = Assembly.GetExecutingAssembly(); 
    using (Stream creditStream = 
    creditAssm.GetManifestResourceStream("YDisplayView.credits.rtf")) 
    { 
     creditsRichTextBox.LoadFile(creditStream, RichTextBoxStreamType.RichText); 
    } 
} 

과 빌드 작업이 포함 리소스로 설정 : 이것은로드 할 때 내가 양식에있는 것입니다.

단추를 클릭하여 양식을로드하면 예상대로 표시되지만 아무 일도 발생하지 않습니다. RTF의 내용은 표시하지 않는 것 :/

난 단지 내가이 초보자를위한 어떤 도움을 주시면 감사하겠습니다

:(잘못하고 있어요 가정 할 수

답변

9

을 내가 그것을 알아 냈어. : 필요

creditAssm.GetManifestResourceStream("YDisplayView.credits.rtf")) 

가되게합니다 :

creditAssm.GetManifestResourceStream("YDisplayView.Resources.credits.rtf")) 

편집 :이시기에 어떤 이유 내가 일할 수있는 위의 코드를 얻을 수 있지만 희망 중 하나 그렇게 또 다른 하나를 발견/또는 거기에 새로운 코더에 도움이 될 것입니다 :)

string rtf = yourAppName.Properties.Resources.yourEmbeddedRTFName; 
     yourRichTextBox.Rtf = rtf; 
+1

응답자로 표시 :). –

2

Help.rtf라는 rtf 도움말 파일을 만들어 리소스로 저장하려고 했으므로 Help.rtf가 응용 프로그램 폴더 주위에 걸리지 않고 도움말 양식을로드 할 때로드 될 수있었습니다.

리소스의 rtf 파일을 추가하려면 메뉴 프로젝트 -> '네임 스페이스'속성 ...을 클릭 한 다음 리소스 탭으로 이동 한 다음 항목 추가 등 ... 인텔리 센스 전에 'My.Resource'를 입력하면 드롭 다운 목록에 rtf 파일이 제공됩니다. 이제 내가 추가 한 도움말 파일을 포함한 리소스 목록이 표시됩니다 (확장자가없는 경우). 한마디로

, 일단이 작업을 수행 한 후,이 일을 다음

RichTextBox1.rtf = My.Resources.Help 

가 분명히 그냥 & 드롭을 드래그하는 것만으로는 충분하지이었다, 복사 또는 심지어 '솔루션 탐색기'를 사용하여 파일을 추가!

이 문제에 3 일을 소요하므로 누군가가 유용하다고 생각하길 바랍니다.