【问题标题】:How to clear cell value on specifi row and column in vb.net?如何清除 vb.net 中特定行和列的单元格值?
【发布时间】:2020-01-27 06:46:31
【问题描述】:

我正在尝试清除 vb.net 中除第一行和第二列之外的单元格值。

我试过

For i = 0 To dgvSchedule.Rows.Count - 1
     If (dgvSchedule.Columns(i).Name = "Column3" Or dgvSchedule.Columns(i).Name = "Column4" Or dgvSchedule.Columns(i).Name = "Column5") And
         dgvSchedule.RowCount >= 1 Then
         dgvSchedule.Rows(1).Cells(i).Value = "0.00"
     End If
Next

但什么也没发生。

【问题讨论】:

  • 您正在使用来自 for 循环 (i) 的行索引作为列索引,您确定这是您想要的吗?
  • @Fabio,我只想清除突出显示部分中的值。任何可能的解决方案都会有很大帮助。
  • 也许:For Each row In dgvSchedule.Rows.Cast(Of DataGridViewRow).Skip(1) : For Each col In dgvSchedule.Columns.Cast(Of DataGridViewColumn).Skip(2) : dgvSchedule(col.Index, row.Index).Value = "0.00" : Next : Next ?

标签: .net vb.net winforms datagridview


【解决方案1】:

这样试试

Dim i As Integer = 0
Dim j As Integer = 0
For i = 0 To dgvSchedule.RowCount - 1
    For j = 0 To dgvSchedule.Columns.Count - 1
        If dgvSchedule.Rows(i).Index > 1 And dgvSchedule.Columns(j).Index > 0 Then
            dgvSchedule.Item(j, i).Value =  "0.00"
        End If
    Next
Next

【讨论】:

  • Row 应该是 > 0Column 应该是 > 1。或者,用 1 启动 i 循环,用 2 启动 j 循环,然后删除 If..End If
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-04-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多