读书笔记 UltraGrid(11)

KeyActionMappings键盘映射
ultragrid缺省的键盘映射可通过以下程序得到:
DataTable dt=new DataTable();
dt.Columns .Add("keyCode");
dt.Columns .Add("actionCode");
dt.Columns .Add("stateDisallowed");
dt.Columns .Add("stateRequired");
dt.Columns .Add("specialKeysDisallowed");
dt.Columns .Add("specialKeysRequired");
DataRow row;

foreach (GridKeyActionMapping gkam in this.ultraGrid1.KeyActionMappings)
{
    row = dt.NewRow();
    row["keyCode"] = gkam.KeyCode;
    row["actionCode"] = gkam.ActionCode;
    row["stateDisallowed"] = gkam.StateDisallowed ;
    row["stateRequired"] = gkam.StateRequired ;
    row["specialKeysDisallowed"] = gkam.SpecialKeysDisallowed ;
    row["specialKeysRequired"] = gkam.SpecialKeysRequired ;
    dt.Rows.Add(row);
}
DataView dv = new DataView(dt, string.Empty, "keyCode Asc", DataViewRowState.CurrentRows);
this.ultraGrid1.DataSource = dv;
如果我们想改变其行为,如常见回车进入下一个单元格,则可如此设置:
this.ultraGrid1.KeyActionMappings.Add(new GridKeyActionMapping(
                Keys.Return,
                UltraGridAction.NextCellByTab,
                0,
                UltraGridState.Cell,
                SpecialKeys.All,
                0));

posted on 2012-02-12 23:46  木人(我现在不是老大)  阅读(292)  评论(0编辑  收藏  举报

导航