在win7环境下使用Devexpress中的SpinEdit控件,切换成中文【简/繁】输入法输入数字键时有不少输入法会重复产生数字
如输入1会变成11,输入123会变成112233。使用SpinEdit控件的解决办法是:可将SpinEdit控件的ImeMode属性设定为
Disable值,这样在控件获得焦点时将禁用输入法。页面上其他可输入中文的控件则将ImeMode属性设定为On。

但是当使用Devexpress中的GridControl进行编辑处理时会发现无论是GridControl,GridView还是GridColumns中的
ColumnEdit控件都没有ImeMode属性,这时候如何处理呢?可通设置GridView的ShownEditor事件或单独设定
ColumnEdit控件的Enter事件解决,一般情况下多列需要改变输入法状态用GridView的ShownEditor事件,单独一列
可使用ColumnEdit控件的Enter事件,代码如下:

TextBoxMaskBox GetInnerEdit(BaseEdit editor)
{
foreach (Control innerEditor in editor.Controls)
if (innerEditor is TextBoxMaskBox)
return innerEditor as TextBoxMaskBox;
return null;
} private void gridView1_ShownEditor(object sender, System.EventArgs e)
{
GridView view = sender as GridView;
if (view.FocusedColumn.FieldName == "FieldName")
{
TextBoxMaskBox innerEditor = GetInnerEdit(view.ActiveEditor);
if (innerEditor != null)
innerEditor.ImeMode = ImeMode.Katakana;
}
}

ColumnEdit控件的Enter事件:

private void SpinEdit1_Enter(object sender, System.EventArgs e)
{
TextBoxMaskBox innerEditor = GetInnerEdit(sender as TextEdit);
if (innerEditor != null)
innerEditor.ImeMode = ImeMode.Hiragana;
}

devexpress中gridview控件编辑时改变输入法状态的更多相关文章

  1. 玩转控件:重绘DEVEXPRESS中DateEdit控件 —— 让DateEdit支持只选择年月 (提供源码下载)

      前言 上一篇博文<玩转控件:重绘ComboBox —— 让ComboBox多列显示>中,根据大家的回馈,ComboBox已经支持筛选了,更新见博文最后最后最后面.   奇葩 这两天遇到 ...

  2. C#设置鼠标在控件上面时,改变光标形状

    //设置鼠标在控件上面时,改变光标形状 private void pictureBox_macroLogo_MouseHover(object sender, System.EventArgs e) ...

  3. Unity编辑器 - 鼠标悬停在控件上时改变鼠标样式

    Unity编辑器 - 鼠标悬停在控件上时改变鼠标样式 摘自Unity文档 EditorGUIUtility.AddCursorRect public static void AddCursorRect ...

  4. .NET中使用GridView控件输入数据时出现“ Index was out of range. Must be non-negative and less than the size of the collection. Parameter name: index"的问题

    在.NET中使用GridView控件的在线编辑数据时,出现了“ Index was out of range. Must be non-negative and less than the size ...

  5. dev中gridview控件 z

    目录:一.客户端常用1.常用API2.聚焦行变更事件3.客户端选择多行4.客户端选择行5. 获取选择的行数目6.单击行时,选中行7.通过checkbox 选择行8.选择所有行9.启动编辑框,Conta ...

  6. ASP.NET中GridView控件删除数据的两种方法

      今天在用GridView控件时,发现了一个问题,就是使用GridView控件在删除数据时的问题.接下来我们通过模板列方式和CommandField方式删除某条数据讲解下两者之间的区别. 方式一:通 ...

  7. 关于开发C#中的asp.net中gridview控件的使用

    原文网址:http://blog.sina.com.cn/s/blog_67f1b4b201017663.html 1.GridView无代码分页排序: 效果图: 1.AllowSorting设为Tr ...

  8. Devexpress中WebChartControl控件柱状统计图的做法(数据为调用存储过程)

    //前台控件代码:WebChartControl控件: <%-- 月采购量统计--%> <dxchartsui:WebChartControl ID="WebChartCo ...

  9. DevExpress中 TreeList控件的常规配置

    //以下为TreeList控件样式相关设置 this.treelist_SystemCfg.BackColor = Color.Transparent; this.treelist_SystemCfg ...

随机推荐

  1. Lucene基础(二)--索引的操作

    索引的操作 我们建立所有就是要达到快速检索的目的,对数据能够方面便的查找,和数据库类似,索引也有自己的相关增删改查的操作. 在索引的增删改查中,增删改属于写操作,主要是有IndexWrite提供的方法 ...

  2. Oracle本地,远程,分布式登录

    identify认证,确定; identity同一性,个性; 本地连接 sqlplus scott/tiger@localhost:1521/orcl 这句话就等于sqlplus scott/tige ...

  3. 10个最好的 jQuery 视频插件(转)

    在这篇文章中已经收集了 10 个最佳的 jQuery 视频插件,帮助开发人员容易地实现网站播放影片功能.可以显示视频和视频播放列表. 1. Bigvideo.js BigVideo.js 是一个 jQ ...

  4. swift版本hello

    import UIKit class ViewController: UIViewController { @IBOutlet var button : UIButton? //var alertVi ...

  5. uva 104 Bandwidth

    题意: 给一个图, 将其节点以任一序列排列. 1)计算每个节点距离相邻节点的最大距离 dis[i] 2)计算出当前序列中, 所有节点的dis[i], 并求出最大的dis[i] : max_dis 求最 ...

  6. C++的构造函数和析构函数

    1.构造函数和析构函数为什么没有返回值? 构造函数和析构函数是两个非常特殊的函数:它们没有返回值.这与返回值为void的函数显然不同,后者虽然也不返回任何值,但还可以让它做点别的事情,而构造函数和析构 ...

  7. POJ 3264 Balanced Lineup(RMQ)

    点我看题目 题意 :N头奶牛,Q次询问,然后给你每一头奶牛的身高,每一次询问都给你两个数,x y,代表着从x位置上的奶牛到y位置上的奶牛身高最高的和最矮的相差多少. 思路 : 刚好符合RMQ的那个求区 ...

  8. iis下设置默认页

    IIS设置设默认页 计算机-->右键管理-->服务器和应用程序-->Internet信息服务 -->网站-->你发布的网站名-->功能视图-->IIS大类里- ...

  9. gdb 调试c/c++的一些小技巧

    ptype obj/class/struct 查看obj/class/struct的成员,但是会把基类指针指向的派生类识别为基类   set print object on 这个选项可以看到派生对象的 ...

  10. nginx 安全漏洞 (CVE-2013-4547)

    Nginx 的安全限制可能会被某些请求给忽略,(CVE-2013-4547). 当我们通过例如下列方式进行 URL 访问限制的时候,如果攻击者使用一些没经过转义的空格字符(无效的 HTTP 协议,但从 ...