的WinForms阿拉伯语输入文本框 [英] Winforms Arabic Input text box
本文介绍了的WinForms阿拉伯语输入文本框的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
在我的窗口申请表(C#),我有阿拉伯语和英语文本框。阿拉伯文文本框,我想自动转向我的语言为阿拉伯语,而不presshing(ALT + SHIFT)。我发现在互联网上这个解决方案,我实现了它在文本框中输入
on my windows application form (c#) , i have arabic and english text boxes. for Arabic text boxes i want to automatically shift my language to arabic without presshing (alt + shift). I found this solution on internet and i implemented it on TextBox Enter
private void TextArabs_Enter(object sender, EventArgs e)
{
System.Globalization.CultureInfo TypeOfLanguage = new System.Globalization.CultureInfo("ar");
InputLanguage.CurrentInputLanguage = InputLanguage.FromCulture(TypeOfLanguage);
}
不过还是当我输入在文本框中这类型的英文字母,而不是阿拉伯语。我应该怎么办
But still when i type in text box it types english letters instead of arabic. what should i do
推荐答案
您可以用这样的方式:
private void TextArabs_Enter(object sender, EventArgs e)
{
InputLanguage.CurrentInputLanguage =
InputLanguage.InstalledInputLanguages[1];
}
0:语言1您的系统上安装
1:语言2的系统上安装,...
0: Language 1 that installed on your system
1: Language 2 that installed on your system ,...
更新:
InputLanguage arabic;
InputLanguage english;
private void Form1_Load(object sender, EventArgs e)
{
arabic = InputLanguage.CurrentInputLanguage;
english = InputLanguage.CurrentInputLanguage;
int count = InputLanguage.InstalledInputLanguages.Count;
for (int i = 0; i <= count - 1; i++)
{
if (InputLanguage.InstalledInputLanguages[i].LayoutName.Contains("Arabic"))
{
arabic = InputLanguage.InstalledInputLanguages[i];
}
if (InputLanguage.InstalledInputLanguages[i].LayoutName.Contains("English"))
{
english = InputLanguage.InstalledInputLanguages[i];
}
}
}
private void txtArabic_Enter(object sender, EventArgs e)
{
InputLanguage.CurrentInputLanguage = arabic;
}
private void txtEnglish_Enter(object sender, EventArgs e)
{
InputLanguage.CurrentInputLanguage = english;
}
这篇关于的WinForms阿拉伯语输入文本框的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文