2016-05-02 17 views
0

Ich überprüfe die Rechtschreibung von Wörtern mit Microsoft Word. Ich weiß, dass ich die Rechtschreibung dies mit überprüfen:Überprüfen Sie die Rechtschreibung mit MS Word Groß-und Kleinschreibung ignorieren

Word.Application app = new Word.Application(); 
bool correct = app.CheckSpelling(word); 
app.Quit(); 

Dies funktioniert gut, aber ich mag ignorieren, wenn das Wort in Großbuchstaben geschrieben oder in Kleinschreibung. Ich überprüfe deutsche Wörter und sie können mit einem Großbuchstaben beginnen, aber wenn ich einen Text überprüfe, wo jedes Wort in Kleinbuchstaben geschrieben wird, gibt diese Methode false für Wörter zurück, die normalerweise mit einem Großbuchstaben beginnen.

Wie kann ich die Case-Sensitivität ignorieren? Ich habe versucht den Parameter ändern ignoreUppercase des Verfahrens, aber es gibt immer noch false:

bool correct = app.CheckSpelling(word, null, true); 

Antwort

1

IgnoreUppercase ALLE CAPS gilt, nicht auf Titel Fall.

Als Titel Fall Großschreibung von Eigennamen ist ein integraler Bestandteil der deutschen Sprache (egal, was manche Leute tun), die Proof-Tools ehren es. Dies ist keine "Option", die aktiviert/deaktiviert werden kann.

Sie können eine Umwandlung erstellen, um das Wort in Titel zu schreiben und das Wort erneut zu testen. Zum Beispiel:

if (!correct) 
{ 
    CultureInfo cultureInfo = Thread.CurrentThread.CurrentCulture; 
    //Create TextInfo object. 
    TextInfo textInfo = cultureInfo.TextInfo; 

    //Convert to title case. 
    Console.WriteLine(textInfo.ToTitleCase(word)); 
    bool correct = app.CheckSpelling(word, null, true); 
} 
+0

Vielen Dank für die Antwort, es funktioniert jetzt. – daniel59