| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Разработка Windows Forms > C# - .NET 4.x Генерация текста |
| Автор: Tketano 21.11.2014, 20:42 |
| Добрый вечер, господа Есть вопрос касательно WinForms. Появилась необходимость генерировать динамический текст (readonly) и отображать его на форме. При этом в тексте могут быть использованы:
Вопрос в том, как это лучше сделать? Генерировать контролы - не вариант. Присмотрелся к RichTextBox... в целом функционал есть, но генерировать rtf тот еще геморрой. Лично для меня Может что упустил?) |
| Автор: diadiavova 21.11.2014, 22:33 |
| WebBrowser ? |
| Автор: Tketano 22.11.2014, 00:51 | ||
Хм... Как html документ? А пример есть? |
| Автор: diadiavova 22.11.2014, 02:47 |
| Такой пример подойдёт? http://msdn.microsoft.com/ru-ru/library/system.windows.forms.webbrowser.documenttext(v=vs.110).aspx |
| Автор: Tketano 22.11.2014, 13:35 | ||
Спасибо! Вечером попробую сгенерировать текст в формате html и выгрузить в WebBrowser. Опасаюсь только какого-то специфического поведения контрола. Если у кого-то есть еще мысли - кидайте |
| Автор: diadiavova 22.11.2014, 18:45 |
Ну такое бывает, но в твоем случае этого вполне можно избежать. Как правило неприятности случаются когда контрол используется для просмотра сайтов, там иногда на самих страницах может оказаться что-то, из-за чего контрол поведет себя непредсказуемо. Но здесь контент ты создаешь сам, так что все от тебя зависит. Ну и настроить его надо, типа там отключить стандартное контекстное меню, окно ошибок сценариев и т. д. Здесь весь вопрос в том, что ты можешь использовать и чего не можешь. В принципе эта задача вполне решается без каких-либо костылей в WPF, так что есть вариант для винформ - захостить WPF-контрол (если испоьзование винформ вообще принципимльно). Не подходит этот вариант, можно опять-таки использовать библиотеки WPF, но только уже для генерации rtf, уж коль скоро по каким-то причинам тебе его трудно самому генерить(хотя учитывая тот минимум требований, что ты описал, можно было бы и заморочиться). Можно попробовать приделать костыль к рипортвьюеру, но не знаю, как это получится. В принципе, в описанных условиях веббраузер - идеальный вариант: возможности ограничены только фантазией, реализация несложная, да и HTML/CSS/JS, хотя бы на базовом уровне наверняка знаешь и ничего дополнительно учить не надо. Так что это вполне себе вариант. |