2017-10-05 19 views
0

我正在用C#编写表单应用程序,并且我有一个DataGridView,它显示来自SQL Server的数据。 这些数据包含一个名为Remove的列,此列的所有行都包含字符串删除。现在我想通过改变背景颜色并使用手形光标使该列的所有单元格看起来像一个按钮。仅在DataGridView的某一列上使用手形光标

我的问题是,我不能只在这一列使用手形光标。我想要的是,当鼠标停留在此列的任何行上时,请将鼠标指针更改为手形光标,而不是其他任何地方。

for(int i=0; i<myDataGridView.RowCount; i++){ 
    myDataGridView.Cursor = Cursors.Hand; 
} 

不会做我想做的,因为鼠标指针变成到处手形光标在DataGridView的,而不是仅在Remove列。 我想是这样

for(int i=0; i<myDataGridView.RowCount; i++){ 
    myDataGridView.Columns["Remove"].Cursor = Cursors.Hand; 
} 

但是这给出了一个错误:

System.Windows.Forms.DataGridViewColumn does not contain a definition for "Cursor".

有没有达到这个什么好的办法?谢谢。

+0

如果你想让列看起来像按钮,然后使用[DataGridViewButtonColumn](https://msdn.microsoft.com/en-us/library/system.windows.forms.datagridviewbuttoncolumn(v = vs.110).aspx) 。 –

回答

3

尝试点击DataGridView的OnCellMouseEnter事件。事件触发后,您可以确定单元格所在的列,并根据需要更改光标。

相关问题