本帖最后由 Richard.Ma 于 2020-11-17 14:46 编辑
你的需求:表格中的单元个选中的情况下,点击下面的按钮,单元格依旧保持选中的状态
1.实际上你这个需要的是点击其他按钮时,flexgrid已经失去焦点,所以你给focus样式设置的红框会消失
如果只是需要显示一样的红色外框的话,将highlight样式也设置成边框红色即可
第二个问题和上面的情况一样,flexgrid已经失去焦点,所以没有办法移动,这个可以考虑通过对winforms的键盘响应来做到
将主窗体的KeyPreview属性设置为true,然后在KeyDown事件中判断方向键,用Select(row,col);方法来移动选择的单元格
- private void MainForm_KeyDown(object sender, KeyEventArgs e)
- {
- int row= f.RowSel, col= f.ColSel;
- switch (e.KeyCode)
- {
- case Keys.Down:
- row++;
- break;
- case Keys.Up:
- row--;
- break;
- case Keys.Left:
- col--;
- break;
- case Keys.Right:
- col++;
- break;
- }
-
- f.Select(row,col);
- }
复制代码
|