2

我试图找到一种方法来阻止我的 datagridview 选择第一个单元格作为默认单元格。现在,如果导入的单元格中有负数,我有代码可以将我的 datagridview 中的单元格的背景色变为红色。但是,这在我的第一个单元格中无法正常工作,因为默认情况下它已经在导入时突出显示。如果有人能找到如何关闭单元格的选择,我将不胜感激!:)

我知道它一定很简单,比如 DataGridView1.CurrentCell.Selected = False

4

6 回答 6

7

处理 DataGridView 的 DataBindingComplete 事件,如下所示:

private void myGrid_DataBindingComplete(object sender, DataGridViewBindingCompleteEventArgs e)
{
    myGrid.ClearSelection();
}
于 2014-01-11T18:55:23.263 回答
0

尝试

 datagridview.currentrow.selected = true

这将使整行被选中,因此更改当前背景颜色的代码不会受到影响。

我有一个创建焦点的代码,但我忘记了。要设置网格的选择,您需要更改方向

于 2013-08-01T09:04:28.630 回答
0

试试这个,对我有用。将此代码放在表单代码中的任何位置,其中包含数据网格。

Private Sub YourDataGridName_DataBindingComplete(ByVal sender As System.Object, _
    ByVal e As System.Windows.Forms.DataGridViewBindingCompleteEventArgs) _
    Handles YourDataGridName.DataBindingComplete

    Dim DGV As DataGridView
    DGV = CType(sender, DataGridView)
    DGV.ClearSelection()
End Sub

来源

于 2014-03-20T07:59:20.557 回答
0

对我有用的是清除选​​择,然后根据行索引设置行。希望这可以帮助。

   GridView.ClearSelection()
   GridView.Rows(RowIndex).Selected = True
   GridView.DataSource = DataTable
   GridView.Refresh()
于 2015-02-19T20:46:26.857 回答
0

这个工作(和不同的选择模式网格视图)

Public Function Grdvw_Cell_Unselect(ByVal Grdvw As DataGridView) As Boolean
    ' cancel all defaut selection in a datagridview
    Grdvw_Cell_Unselect = False
    Try
        Grdvw.ClearSelection()
        Grdvw.Item(0, 0).Selected = False
        Grdvw_Cell_Unselect = True
    Catch ex As Exception
    End Try
End Function

然后像这样使用: Grdvw_Cell_Unselect(your_datagridview) ...

于 2013-10-11T10:04:10.257 回答
0

Paintdatagridview绑定事件。

单击 datagridview > Properties > Paint > 双击 Paint 附近的空间 > 它会创建类似这样的方法:datagridview1_Paint(object sender, PaintEventArgs e)

如图所示,在该方法中写入这两行:enter code here

private void datagridview1_Paint(object sender, PaintEventArgs e) {
    this.datagridview1.ClearSelection();
    this.datagridview1.CurrentCell = null;
}
于 2021-02-04T15:43:06.573 回答