首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将Indic IME模式设置为特定的TextBox?

如何将Indic IME模式设置为特定的TextBox?
EN

Stack Overflow用户
提问于 2016-05-08 09:17:02
回答 1查看 2K关注 0票数 0

我正在为政府开发应用程序,用户将输入英文文本,翻译文本将出现在另一个文本框中。

要翻译文本,我使用Microsoft Indic语言输入工具

所以,当我在一个文本框(英语)中输入文本时,我希望文本应该被翻译成另一个文本框(印地语)。

但是,问题是该工具正在textbox上创建层,因此,在word未完成之前,我不会得到任何KeyPress/KeyDown/TextChange事件,并且为所有输入控件设置IME模式,而不是为特定的单个控件设置IME模式。

是否可以只为一个文本框设置IME模式?

EN

回答 1

Stack Overflow用户

发布于 2017-02-26 12:29:35

假设您有两个TextBox控件,那么English only TextBox只需要将其ImeMode属性设置为Disable

例如。

代码语言:javascript
复制
        this.textBox2.ImeMode = System.Windows.Forms.ImeMode.Disable;

(在Visual测试Form1.Designer.cs模式期间,当我在Visual中设置Disable通过属性窗格时,将生成Form1 [Design] )。

编辑:上面的测试是在Windows10上使用英语作为我的默认系统语言。

有趣的观察:当我使用ImeMode.Off而不是ImeMode.Disable (基于:https://stackoverflow.com/a/2209587/7270462)进行测试时,使用ImeMode.Off似乎不足以阻止TextBox接受另一种语言的textbox文本输入(经过测试的中文和日语输入,这些至少仍然可以输入到文本框中)。也测试了设置ImeMode.NoControl最初出于好奇,但这也没有达到与ImeMode.Disable相同的目标。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37098195

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档