Я не понял, хотите ли вы только отображать файлы или разрешать пользователю редактировать их.
В любом случае, возможно, ScintillaNET будет вам полезен.
Хорошо известный текстовый редактор, Notepad ++ использует Scintilla :)
Вы можете получить источники notepad ++ на http://sourceforge.net/projects/notepad-plus/,, но написано на c ++, поэтому API будет немного отличаться от.NET.
РЕДАКТИРОВАТЬ
Notepad ++ способен отображать файлы размером около 100-200 МБ.Если вам нужно лучше, вам нужно реализовать какую-то технологию пейджинга / виртуальный режим (не загружать весь файл, только часть, которая будет отображаться на экране в зависимости от текущей позиции полосы прокрутки)
ЕслиСцинтилла кажется излишним, тогда, возможно, вам лучше просто построить DataGrid.Если записи журнала состоят из нескольких полей, они могут стать столбцами и их будет еще проще читать.Если вы хотите пойти по этому пути, сначала разберите ваш файл журнала в список LogEntry, а затем используйте привязку данных для привязки к нему.Вы можете читать ваш файл постепенно, по мере добавления новых строк для лучшего взаимодействия с пользователем.