こんにちは、クリックするたびに行を追加する3列目のボタンを非表示または無効にしたいとします。混乱は、前のボタンがアクティブであり、行を追加することができます。最後の行にのみボタンを配置するにはどうすればよいですか?DataGridViewでボタンを無効にする方法または非表示にする方法
は、ここに私の作業コードです:
Private Sub dgAppliances_CellContentClick(sender As Object, e As DataGridViewCellEventArgs) Handles dgAppliances.CellContentClick
If e.ColumnIndex <> 2 Then
Exit Sub
Else
If Me.dgAppliances.RowCount - 1 = 20 Then
MsgBox("Maximum of 20 appliances only.")
Else
Me.dgAppliances.Rows.Add()
End If
End If
End Sub
しかし、私はいくつかのコードを追加したとき:
Private Sub dgAppliances_CellContentClick(sender As Object, e As DataGridViewCellEventArgs) Handles dgAppliances.CellContentClick
If e.ColumnIndex <> 2 Then
Exit Sub
Else
If Me.dgAppliances.RowCount - 1 = 20 Then
MsgBox("Maximum of 20 appliances only.")
Else
Me.dgAppliances.Rows.Add()
Dim cell As DataGridViewButtonCell = dgAppliances.Rows(0).Cells(2)
cell.Value = String.Empty
cell = New DataGridViewColumn()
cell.ReadOnly = True
End If
End If
End Sub
このラインセル=新DataGridViewColumn()がエラーを持っています。
「System.Windows.Forms.DataGridViewColumn」は「System.Windows.Forms.DataGridViewButtonCell」に変換できません。
誰もがこれについて私を助けることができますか? TIA。
Woah。あなたは最高です!!助けてくれてありがとう。 :)))それは動作します、私はボタンを削除する前の行を作ることに取り組んでいます。 :)ありがとう、私もそれを手伝ってくれることを願っています。 :) –
この場合、セルをまったく変換する必要はありません。最初から列を 'DataGridViewButtonColumn'にします。次に 'CellContentClick'イベントで、' DataGridViewButtonCell'をクリックした場合は、グリッド内の最後の行かどうかを確認します。そうであれば、別の行を追加します。そうでない場合は、クリックされた行を削除します。唯一の部分は、ボタンのテキストを「追加」から「削除」に変更することです。 – OhBeWise
私はそれを持っています。ありがとうございました。 :)) –