none
SpellCheck RRS feed

  • Pergunta

  • Bom dia!

    Pesquisei uma maneira de se fazer uma textbox que corrigisse ortografia e encontrei o código abaixo, que utiliza o SpellCheck do WPF. O texto errado é sublinhado em vermelho e com o clique direito do mouse abrem sugestões de palavras corretas.

    O problema é o seguinte, em alguns computadores da rede o texto não é corrigido. O que será que é preciso instalar para fazer a "SpellBox" pegar?

    Já tentamos:

    • Instalar o Framework 4.5,
    • Instalar o pacote de Idiomas do Framework 4.5,
    • Instalar o Word,
    • Instalar o Visual Studio na máquina.
    • Algumas máquinas só estão corrigindo quando o idioma do computador está em inglês (corrigem para o inglês)
    • As máquinas que estão funcionando, tem o windows 10 e o Visual Studio instalado.

    Se alguém puder dar uma luz, agradeço imensamente.

    using System;
    using System.ComponentModel;
    using System.Windows;
    using System.Windows.Controls;
    using System.Windows.Forms.Integration;
    using System.Windows.Forms.Design;
    
    [Designer(typeof(ControlDesigner))]
    //[DesignerSerializer("System.Windows.Forms.Design.ControlCodeDomSerializer, System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a", "System.ComponentModel.Design.Serialization.CodeDomSerializer, System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
    class SpellBox : ElementHost
    {
        public SpellBox()
        {
            box = new TextBox();
            base.Child = box;
            box.TextChanged += (s, e) => OnTextChanged(EventArgs.Empty);
            box.SpellCheck.IsEnabled = true;
            box.IsReadOnly = false;
            box.VerticalScrollBarVisibility = ScrollBarVisibility.Auto;
            this.Size = new System.Drawing.Size(100, 20);
        }
        public override string Text
        {
            get { return box.Text; }
            set { box.Text = value; }
        }
        [DefaultValue(false)]
        public bool Multiline
        {
            get { return box.AcceptsReturn; }
            set { box.AcceptsReturn = value; }
        }
        [DefaultValue(false)]
        public bool WordWrap
        {
            get { return box.TextWrapping != TextWrapping.NoWrap; }
            set { box.TextWrapping = value ? TextWrapping.Wrap : TextWrapping.NoWrap; }
        }
        [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
        public new System.Windows.UIElement Child
        {
            get { return base.Child; }
            set { /* Do nothing to solve a problem with the serializer !! */ }
        }
        private TextBox box;
    }


    • Editado Levorato segunda-feira, 11 de julho de 2016 13:39 faltou uma palvra
    segunda-feira, 11 de julho de 2016 13:39

Respostas

  • Bom dia Levorato,

    Obrigado por sua participação no Fórum MSDN.

    Nesses computadores onde o corretor não está funcionando tente mudar o idioma do Visual Studio seguindo estes passos:

    1. Baixe o pacote de idiomas aqui.

    2. Seleciona o idioma que você deseja usar no Visual Studio. No menu Tools, clique em Options e expanda Environment. Abra International Settings e selecione o idioma(português).

    Mais informações sobre os idiomas no Visual Studio podem ser encontradas neste link.

    Atenciosamente,


    Robson William Silva

    Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    terça-feira, 12 de julho de 2016 12:37
    Moderador