Pregunta

Tengo un problema con .net's Richtextbox control. Parece que no es compatible con el formato de la celda de la tabla, lo cual es divertido porque la mayoría de las veces creo tablas, quiero que el contenido de la celda esté alineado a la derecha (números, moneda).

Si intento abrir un documento de WordPad en RichTextBox, ignora (y en realidad elimina) Los comandos para la alineación de la celda. Probé varias soluciones pero no tuve éxito.

  1. ¿Alguien puede pensar en una idea para solucionar esto? (sin usar fuentes y espacios de ancho fijo) Esta sería la mejor solución ya que otro código ya funciona bien, por lo que si lo único necesario es un truco sucio, sería genial.

  2. ¿O hay una alternativa de código abierto para el editor de texto rico en .NET que puede recomendar? Necesito un control de usuario que pueda incrustar en mi formulario de Windows y acceder a los contenidos programáticamente (crear contenido o agregar algo). He buscado en la web durante algún tiempo, pero solo encontré controles web (AJAX/JavaScript).

  3. También hay editores HTML Wysiwyg que podría usar, pero todos son básicamente un navegador IE incrustado y editado usando MSHTML, y se siente un poco extraño tener eso en una aplicación WinForms (tal vez estoy equivocado). Y en ese caso, necesitaremos algo de tiempo extra para implementar un generador de contenido para HTML, aunque es mucho más fácil de leer y generar que RTF en mi humilde opinión.

  4. ¿Qué encuentran mejor para este propósito?

¿Fue útil?

Solución

Si todavía está bajando por la ruta .NET WinForms, luego herede de RichTextBox y agregue el siguiente código, transformará el RichTextBox en algo "utilizable":

[DllImport("kernel32.dll", CharSet = CharSet.Auto)]
static extern IntPtr LoadLibrary(string lpFileName);

protected override CreateParams CreateParams
{
    get
    {
       CreateParams cparams = base.CreateParams; 
       if (LoadLibrary("msftedit.dll") != IntPtr.Zero)
       {
          cparams.ClassName = "RICHEDIT50W";
       }
       return cparams;
     }
}

Obtenido de aquí.

Que tengas un lindo día:)

Otros consejos

3. También hay editores HTML Wysiwyg que podría usar, pero todos son básicamente un navegador IE integrado y editado usando MSHTML, y se siente un poco extraño tener eso en una aplicación WinForms (tal vez estoy equivocado).

He escrito un editor HTML Wysiwyg: el ModelText HTML Control para .net. Es un código administrado puro, sin dependencia de un navegador; Exporta las API .NET, que le permiten acceder a su contenido mediante programación.

La próxima versión que se lanzará (en unos días a partir de ahora) admitirá la alineación celular (al admitir la propiedad CSS "Text-Align").

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top