情况是这样的:选定某个单元格但尚未编辑时输入法从英文切换成中文,但是一旦进入编辑,输入法却自动切换成英文,此时要想输入中文只有再次手动切换输入法,当退出编辑时输入法又再次从中文切换成英文。
所以要想编辑中文只有一次次手动切换,烦不胜烦。
我想问问怎样使输入法在手动切换后保持不变
将form的imemode属性设置为on
用微软拼音、王码五笔输入都没有问题,自动进入编辑了。
否则试试:
//要不就用
this.dataGridView1.EditMode = DataGridViewEditMode.EditOnEnter;
以下参考 DataGridViewEditMode枚举值的意思
成员名称 说明
EditOnEnter 当单元格接收到焦点时即可开始编辑。在按 Tab 键在行中横向输入值,或按 Enter 键在列中纵向输入值时,此模式非常有用。
EditOnF2 当单元格获得焦点时按 F2 开始编辑。此模式将选择点放置在单元格内容的末尾。
EditOnKeystroke 当单元格获得焦点时按任意字母数字键开始编辑。
EditOnKeystrokeOrF2 当单元格获得焦点时按任意字母数字键或 F2 开始编辑。
EditProgrammatically 仅在调用 BeginEdit 方法时开始编辑。
试试看
foreach (InputLanguage iL in InputLanguage.InstalledInputLanguages)
{
if (iL.LayoutName == "智能ABC") //或者某种输入法
{
InputLanguage.CurrentInputLanguage = iL;
break;
}
}