CultureNotFoundException — 4096 (0x1000) — недопустимый идентификатор культуры при нажатии клавиши Textedit.C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 CultureNotFoundException — 4096 (0x1000) — недопустимый идентификатор культуры при нажатии клавиши Textedit.

Сообщение Anonymous »

Недавно некоторые пользователи, владеющие шведским или немецким языком, сообщили о проблеме, из-за которой они не могут ввести текст в элемент управления textedit (текстовое поле).
Они могут вставить текст внутри элемента управления с помощью щелкните правой кнопкой мыши, но пока используется клавиатура, появится следующая ошибка:

Код: Выделить всё

 CultureNotFoundException - Culture is not supported. (Parameter 'culture')
4096 (0x1000) is an invalid culture identifier.

at System.Globalization.CultureInfo.GetCultureInfo(Int32 culture)
at System.Windows.Forms.InputLanguage.get_LanguageTag()
at System.Windows.Forms.InputLanguage.get_Culture()
at DevExpress.XtraEditors.TextEditController.InputHandler.InputHandler.get_AllowUpdateRightToLeft()
at DevExpress.XtraEditors.TextEditController.InputHandler.InputHandler.CheckTextDirection(Keys key, Boolean keyUp)
at DevExpress.XtraEditors.TextEditController.TextEditController.OnKeyDown(KeyEventArgs e)
at DevExpress.XtraEditors.TextEdit.AdvTextEditWorkingStrategy.OnKeyDown(KeyEventArgs keyEventArgs)
at DevExpress.XtraEditors.TextEdit.OnKeyDown(KeyEventArgs e)
at Devolutions.RemoteDesktopManager.Controls.PasswordTextBox.OnKeyDown(KeyEventArgs e)
at System.Windows.Forms.Control.ProcessKeyEventArgs(Message& m)
at System.Windows.Forms.Control.WmKeyChar(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at DevExpress.Utils.Controls.ControlBase.BaseWndProc(Message& m)
at DevExpress.XtraEditors.TextEdit.BaseEditWndProc(Message& msg)
at DevExpress.XtraEditors.TextEdit.WndProc(Message& msg)
at System.Windows.Forms.NativeWindow.Callback(HWND hWnd, MessageId msg, WPARAM wparam, LPARAM lparam)
Textedit — это элемент управления DevExpress, но я не совсем уверен, что проблема кроется именно в нем, поскольку ошибка, похоже, возникает при вызове «системных» методов.
Мы попытались воспроизвести на компьютере, на котором мы установили родную шведскую ОС Windows и принудительно установили UICulture и культуру в соответствии с пользовательской (шведской) с помощью команд PowerShell Set-WinUILanguageOverride sv-SE и Set-WinUserLanguageList. sv-SE -Force, но мы не можем воспроизвести проблему нашего пользователя.
Я нашел здесь информацию, в которой говорится следующее о коде 4096 (0x1000) :

В большинстве случаев идентификатор языка и региональных параметров сопоставляется с соответствующим
идентификатором языкового стандарта NLS.
В версиях Windows, предшествующих Windows 10, идентификатор локали
LOCALE_CUSTOM_UNSPECIFIED (0x1000 или 4096) назначается пользовательским
языкам, созданным пользователем. Начиная с Windows 10, он назначается
любой культуре, которая не имеет уникального идентификатора локали и
не имеет полных данных, предоставляемых системой. В результате код, который
перебирает культуры и извлекает те, у которых значение LCID
LOCALE_CUSTOM_UNSPECIFIED, возвращает большее подмножество объектов CultureInfo
при запуске под Windows 10.

Наши пользователи используют версии Windows: Windows 11 версии 23H2 (сборка ОС 22631.3527), 64-разрядная версия и Windows 2016 версии 21H2 (сборка ОС 20348.2402), 64-разрядная версия
Есть идеи, в чем может быть проблема и как ее исправить?

Подробнее здесь: https://stackoverflow.com/questions/784 ... ier-on-tex
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»