Cómo resaltar la sintaxis en un control richtextbox COMO TIPOS DE USUARIO y UTILIZANDO una cadena [] palabras clave. Próximamente publicaré un bloc de notas ligero en la web y quiero que destaque la sintaxis. Estoy usando formularios de Windows. ¿Alguien puede publicar un ejemplo de código?Cómo resaltar la sintaxis en un RichTextBox [C#]?
Respuesta
- RichTextBox syntax highlighting (hablar de ella misma RichTextBox - características mínimas, pero exactamente lo que pidió aquí)
- A textbox/richtextbox that has syntax highlighting? [C#] (charlas sobre todo acerca de otras maneras de hacerlo)
¿Está utilizando Windows Forms o WPF?
Si WPF, podría echar un vistazo a AvalonEdit. Es gratis y de código abierto, y se usa en SharpDevelop (IDE de código abierto).
Puede cambiar la fuente de las palabras seleccionadas en richtextbox. Eche un vistazo a las propiedades Select y SelectedFont del control.
Pero, en esencia, debe repetir las palabras, verificar si hay una palabra en sus palabras clave y luego cambiar la fuente, utilizando las propiedades mencionadas anteriormente.
No es exactamente una respuesta a su pregunta, pero ¿ha mirado el componente del editor de texto desde SharpDevelop? Es bastante ligero (200 kB < IIRC), puede ser fácilmente integrado en aplicaciones Windows Forms y tiene resaltado de sintaxis para varios lenguajes incorporados.
De lo contrario, es posible que desee ver en this CodeProject page. Reformatea el RTF mientras escribes, que no es muy eficiente para archivos de gran tamaño, y contiene algunos bloques catch (Exception) { }
espeluznantes, así que no estoy seguro si lo usaría en una aplicación vital, pero definitivamente es un buen comienzo señalar cómo se puede hacer.
El resaltado de sintaxis no es una tarea fácil de realizar de manera eficiente. Muchas soluciones que puede encontrar (como las que implican la modificación de RTF) son una solución única. Si desea resaltar y desmarcar palabras sobre la marcha durante la edición, su código debe estar listo para ello. No reinventaría la rueda y usar ICSharp.TextEditor o similar para resolver su problema.
El control Scintilla es un excelente editor de código fuente que incluye resaltado de sintaxis entre una amplia gama de otras características. Puede incrustarlo en su propia aplicación y hay un .NET wrapper disponible.
Con Scintilla puede especificar las palabras clave y luego aplicará el resaltado de sintaxis a medida que escribe.
¿Cómo instalo el .dll? –
Si descarga el .NET Wrapper desde http://scintillanet.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=34393, entonces puede simplemente agregar el archivo ScintillaNet.dll a las "Referencias" de su proyecto (si es usando Visual Studio). –
requiere implementar uno de los dlls en windows \ system32, que es una gran desventaja –
- 1. Resaltar en un RichTextBox tarda demasiado
- 2. Sintaxis ¿resaltar un archivo vimrc en Emacs?
- 3. Cómo sintaxis resaltar XML en reStructuredTest/Sphinx
- 4. Cómo forzar vim a sintaxis-resaltar un archivo como html?
- 5. ¿Cómo implementar el resaltado de sintaxis básica en Winforms RichTextBox?
- 6. Resaltar resaltado de sintaxis en SciTE/Notepad ++
- 7. ¿Es posible resaltar la sintaxis SQL en línea?
- 8. Autoscrolling en RichTextBox C# WinForms
- 9. Cómo alinear texto en RichTextBox C#?
- 10. vim sintaxis resaltar mejorar el rendimiento
- 11. NetBeans - resaltar la sintaxis html con archivos twig
- 12. C# Impresión (RichTextBox)
- 13. No se puede resaltar la sintaxis xml con highlight.js
- 14. Hacer emacs para resaltar la sintaxis postgresql de forma predeterminada
- 15. Un cuadro de texto/richtextbox que tiene resaltado de sintaxis? [C#]
- 16. ¿Puede Visual Studio 2010 resaltar la sintaxis del archivo ".inc"?
- 17. C# - ¿Cargando un archivo grande en un WPF RichTextBox?
- 18. C# RichTextBox Seleccione especificada texto
- 19. Enlazando un RichTextBox a un control deslizante en C#
- 20. Texto para colorear en RichtextBox, C#
- 21. C# RichTextBox problema de selección
- 22. Símbolo Celsius en RichTextBox
- 23. Modo E de Emacs: cómo resaltar la sintaxis con números hexadecimales?
- 24. vs2010 C# depuración resaltar color
- 25. transparente richTextBox
- 26. Herramienta de línea de comandos para sintaxis resaltar C# en HTML?
- 27. C# ¿Cómo puedo configurar el color del texto en richtextbox?
- 28. ¿Cómo desplazo un RichTextBox hacia abajo?
- 29. Cómo resaltar texto en un widget de texto tkinter
- 30. Obtenga Visual Studio para resaltar la sintaxis de Razor con un host personalizado. FactoryType
El resaltado de sintaxis, para un procesador de texto diseñado para devolverte la llamada o para recibir texto de forma iterativa antes del procesamiento, es bastante trivial: es solo un análisis léxico que clasifica el texto de acuerdo con su tipo de token. Pero RTF y otros editores no están diseñados de esta manera, con separación entre los datos del modelo y su presentación. –
Sí, parece que RTF parece bastante viejo hoy en día ... :-) – jdehaan