dev列表控件在单元格进行编辑之后,直接用鼠标滚轮进行滚动得话,发现数据不会跟着滚动,这是需要点击一下设置的不能编辑得列再进行滚轮才有效果。其根本原因在于,编辑完单元格后,滚动条所在的列表控件没有马上获取焦点,需要点击下不能编辑的地方,才会获取焦点,针对这种情况,我们可以通过代码进行控制。下面以treelist列表控件为例,进行说明
我们只需为控件注册滚轮事件,让每次鼠标滚轮之前,让控件获取焦点
//注册滚轮事件
//滚轮事件需要在加载时用代码注册,在事件列表中没有滚轮事件
treeList1.MouseWheel += TreeList_MouseWheel;
/// <summary>
/// 滚轮事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void TreeList_MouseWheel(object sender, MouseEventArgs e)
{
//获取焦点
treeList1.Focus();
}
添加完上面的代码之后,每次编辑完直接滚轮,就会有效果啦
其它数据列表控件,比如gridcontrol类似