C# DataGridView鼠标滚轮滚动停止工作
我的应用程序中有一个DataGridView,我无法使用鼠标滚轮滚动它。以前它工作得很好。我不确定我做了什么导致了这种情况,因为我只是在最近对代码做了多次更改后才注意到它 我没有发布任何代码,因为有超过2k行,我不确定错误可能在哪里C# DataGridView鼠标滚轮滚动停止工作,c#,datagridview,C#,Datagridview,我的应用程序中有一个DataGridView,我无法使用鼠标滚轮滚动它。以前它工作得很好。我不确定我做了什么导致了这种情况,因为我只是在最近对代码做了多次更改后才注意到它 我没有发布任何代码,因为有超过2k行,我不确定错误可能在哪里 你知道这是什么原因吗?如果您需要任何代码,我可以在以后编辑问题。几乎可以肯定,问题的出现是因为DataGridView失去了焦点。这可能是因为表单上的另一个控件需要焦点,或者表单默认设置为提供不同的控件焦点 您可以强制DataGridView具有焦点。如果您想模拟当
你知道这是什么原因吗?如果您需要任何代码,我可以在以后编辑问题。几乎可以肯定,问题的出现是因为DataGridView失去了焦点。这可能是因为表单上的另一个控件需要焦点,或者表单默认设置为提供不同的控件焦点 您可以强制DataGridView具有焦点。如果您想模拟当鼠标悬停在控件上时启用鼠标滚轮滚动的标准Microsoft Windows行为,则只需使用以下代码
private void SettingsGrid_MouseEnter(object sender, EventArgs e)
{
dataGridView1.Focus();
}
如果您想滚动网格,而不管哪个控件具有焦点,则代码将与上面类似,只需稍加调整。如果网格具有焦点,鼠标滚轮将仅滚动网格。在使用滚轮之前,请尝试单击网格中的一个单元格。您是否意外地为正在拦截事件的鼠标滚轮事件添加了EventHandler?谢谢,当我单击单元格时,焦点会移动。就是这样!谢谢单击时,它会将焦点切换到文本框。现在我需要弄清楚如何保持焦点切换到文本框,并能够滚动dataGridView。