Pergunta

Eu tenho um problema com o .NET's RichTextBox ao controle. Parece que ele não suporta a formatação da célula da tabela, o que é engraçado, porque na maioria das vezes eu crio tabelas, quero que o conteúdo da célula seja alinhado à direita (números, moeda).

Se eu tentar abrir um documento WordPad no RichTextBox, ele ignora (e na verdade remove) os comandos para o alinhamento das células. Eu tentei várias soluções alternativas, mas não consegui.

  1. Alguém pode pensar em uma ideia para consertar isso? (sem usar fontes e espaços de largura fixa) Essa seria a melhor solução, pois outro código já está funcionando bem, por isso, se apenas a coisa necessária for um hack sujo, seria ótimo.

  2. Ou existe uma alternativa de código aberto para o editor de texto Rich .NET que você pode recomendar? Preciso de um controle de usuário que eu possa incorporar no meu formulário Windows e acessar o conteúdo programaticamente (criar conteúdo ou anexar alguma coisa). Eu procurei na Web há algum tempo, mas encontrei apenas controles da Web (Ajax/JavaScript).

  3. Existem também editores HTML Wysiwyg que eu poderia usar, mas todos são basicamente um navegador do IE incorporado e editado usando o MSHTML, e é um pouco estranho ter isso em um aplicativo Winforms (talvez eu esteja errado). E nesse caso, precisaremos de algum tempo extra para implementar um gerador de conteúdo para HTML - embora seja muito mais fácil ler e gerar do que o RTF IMHO.

  4. O que vocês acham melhor para esse fim?

Foi útil?

Solução

Se você ainda estiver seguindo o caminho .NET WinForms, herde da RichTextBox e adicione o código a seguir, ele transformará a caixa de RichText em algo "utilizável":

[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;
     }
}

Proveniente de aqui.

Tenha um bom dia:)

Outras dicas

3. Também existem editores html wysiwyg que eu poderia usar, mas todos são basicamente um navegador IE incorporado e editado usando o MSHTML, e parece um pouco estranho em um aplicativo Winforms (talvez eu esteja errado).

Eu escrevi um editor html wysiwyg: o ModelText HTML Controle para .NET. É um código gerenciado puro, sem dependência de um navegador; Ele exporta APIs .NET, que permitem acessar seu conteúdo programaticamente.

A próxima versão a ser lançada (daqui a alguns dias) apoiará o alinhamento das células (apoiando a propriedade "Text-Align" CSS).

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top