积极答复者
关于datagridview单元格焦点的问题?

问题
答案
-
你好!
设置 CurrentCell 可以达到定位焦点单元格的作用,若需要直接进入编辑状态则需要使用 BeginEdit(false) 方法,但在 FormLoad 事件中调用此方法不能达到预期效果(可能是被抢了焦点),使用延时技艺能够解决此问题。
void SetFocusedCell(DataGridView gv, DataGridViewCell cell) { using (BackgroundWorker bg = new BackgroundWorker()) { bg.DoWork += (o, e) => { System.Threading.Thread.Sleep(5); }; bg.RunWorkerCompleted += (o, e) => { gv.CurrentCell = cell; gv.BeginEdit(false); }; bg.RunWorkerAsync(); } }
知识改变命运,奋斗成就人生!- 已标记为答案 feiyun0112Moderator 2011年3月18日 3:02
全部回复
-
你好!
设置 CurrentCell 可以达到定位焦点单元格的作用,若需要直接进入编辑状态则需要使用 BeginEdit(false) 方法,但在 FormLoad 事件中调用此方法不能达到预期效果(可能是被抢了焦点),使用延时技艺能够解决此问题。
void SetFocusedCell(DataGridView gv, DataGridViewCell cell) { using (BackgroundWorker bg = new BackgroundWorker()) { bg.DoWork += (o, e) => { System.Threading.Thread.Sleep(5); }; bg.RunWorkerCompleted += (o, e) => { gv.CurrentCell = cell; gv.BeginEdit(false); }; bg.RunWorkerAsync(); } }
知识改变命运,奋斗成就人生!- 已标记为答案 feiyun0112Moderator 2011年3月18日 3:02