Загрузка файла встроенного ресурса .rtf в richtextbox при загрузке C # - PullRequest
5 голосов
/ 18 февраля 2011

Хорошо, поэтому я прочитал о загрузке встроенного rtf в поле расширенного текста, и я пытаюсь сделать это при загрузке формы. Форма - это не основная форма, это вторая форма, которая загружается при нажатии на элемент управления. Это то, что я имею в форме при загрузке:

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 отображается как ресурс, а для действия по сборке задан встроенный ресурс.

когда я нажимаю кнопку, чтобы загрузить форму, она показывает, как ожидалось, но ничего не происходит. Содержимое RTF, кажется, не показывает: /

Я могу только предположить, что я делаю это неправильно: (

Любая помощь для этого новичка будет оценена.

Ответы [ 2 ]

9 голосов
/ 19 февраля 2011

Я понял:

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

должно быть:

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

Редактировать: По какой-то причине в этот разЯ не могу заставить приведенный выше код работать, но я нашел другой, который, как мы надеемся, или / или будет полезным для новых программистов:)

string rtf = yourAppName.Properties.Resources.yourEmbeddedRTFName;
        yourRichTextBox.Rtf = rtf;
3 голосов
/ 28 июня 2012

Я хотел создать файл справки rtf с именем Help.rtf и сохранить его в качестве ресурса, чтобы его можно было загружать при загрузке формы справки без зависания Help.rtf вокруг папок приложения.

Я обнаружил, что мне нужно добавить файл rtf к ресурсам через свойства меню Project-> 'Ваше пространство имен' ... , затем перейти на вкладку "Ресурсы", затем "Добавить элемент" и т. Д. ... до того, какintellisense предложит файл rtf в раскрывающемся списке, когда я наберу «My.Resource».Теперь отображается список ресурсов, включая добавленный мной файл справки (без расширения, что является нормальным).

Короче говоря, как только это было сделано, сработало следующее:

RichTextBox1.rtf = My.Resources.Help

Очевидно, было недостаточно просто перетащить, скопировать или даже добавить файл с помощью «Обозревателя решений»!

Потратил 3 дня на эту проблему, поэтому я надеюсь, что кто-то найдет ее полезной.

...