private void updateLocaleInfo() { if (IsInitialized) { CultureInfo currentCi = CultureInfo.CurrentCulture; CultureInfo currentUICi = CultureInfo.CurrentUICulture; threadLocale.Text = currentCi.IetfLanguageTag; uilocale.Text = currentUICi.IetfLanguageTag; flowdocLocale.Text = richtextbox.Document.Language.IetfLanguageTag; windowLocale.Text = mainWindow.Language.IetfLanguageTag; textboxLocale.Text = textbox.Language.IetfLanguageTag; var tmp = InputLanguageManager.GetInputLanguage(richtextbox); tmp = InputLanguageManager.Current.CurrentInputLanguage; if (tmp.ThreeLetterISOLanguageName.Equals("ivl")) { inputLocale.Text = "invariant"; } else { inputLocale.Text = tmp.IetfLanguageTag; } var firstErrorPos = richtextbox.GetNextSpellingErrorPosition(richtextbox.Document.ContentStart, LogicalDirection.Forward); int i = 0; TextPointer pos = richtextbox.GetNextSpellingErrorPosition(richtextbox.Document.ContentStart, LogicalDirection.Forward); while (pos != null) { var range = richtextbox.GetSpellingErrorRange(pos); pos = range.End; i++; pos = richtextbox.GetNextSpellingErrorPosition(pos, LogicalDirection.Forward); if (i > Byte.MaxValue) { break; } } errorCount.Content = i; } }
private void changeLang(object sender, RoutedEventArgs e) { // <Snippet1> this.Dispatcher.Thread.CurrentCulture.Name.ToString(); InputLanguageManager.SetInputLanguage(myTextBox, CultureInfo.CreateSpecificCulture("fr")); tb2.Text = "Available Input Languages:"; lb1.ItemsSource = InputLanguageManager.Current.AvailableInputLanguages; tb3.Text = "Input Language of myTextBox is " + InputLanguageManager.GetInputLanguage(myTextBox).ToString(); tb4.Text = "CurrentCulture is Set to " + this.Dispatcher.Thread.CurrentCulture.Name.ToString(); // </Snippet1> // <Snippet2> InputMethod.SetPreferredImeState(myTextBox, InputMethodState.On); InputMethod.Current.ImeSentenceMode = ImeSentenceModeValues.Automatic; InputMethod.Current.HandwritingState = InputMethodState.On; InputMethod.Current.SpeechMode = SpeechMode.Dictation; InputScope myInputScope = new InputScope(); myInputScope.RegularExpression = "W|P|F"; InputMethod.SetInputScope(myTextBox, myInputScope); tb6.Text = "Configuration UI Available?: " + InputMethod.Current.CanShowConfigurationUI.ToString(); // </Snippet2> }