3

Checkboxの複数選択(すべて選択)行に列ヘッダーをDatagridview追加できません。グーグル で検索しましたが、列ヘッダーではなく行に追加するように指示checkboxされています。

すべてのチェック ボックスをオンにしますので、列ヘッダーをクリックします。例えば下の画像を見てください。インターネットから入手したリストビュー画像ですが、使用してDatagridviewいます。 ここに画像の説明を入力

4

1 に答える 1

2

これはインターネットから入手しましたが、リンクがどこにあるのか思い出せず、元々はc#からのものです。

Private checkboxHeader231 As CheckBox
Private Sub show_chkBox()
    Dim rect As Rectangle = DataGridView1.GetCellDisplayRectangle(columnIndexOfCheckBox, -1, True)
    ' set checkbox header to center of header cell. +1 pixel to position 
    rect.Y = 3
    rect.X = rect.Location.X + 8 + (rect.Width / 4)
    checkboxHeader231 = New CheckBox()
    With checkboxHeader231
        .BackColor = Color.Transparent
    End With

    checkboxHeader231.Name = "checkboxHeader1"
    checkboxHeader231.Size = New Size(18, 18)
    checkboxHeader231.Location = rect.Location
    AddHandler checkboxHeader231.CheckedChanged, AddressOf checkboxHeader231_CheckedChanged
    DataGridView1.Controls.Add(checkboxHeader231)
End Sub

Private Sub checkboxHeader231_CheckedChanged(sender As System.Object, e As System.EventArgs)
    Dim headerBox As CheckBox = DirectCast(DataGridView1.Controls.Find("checkboxHeader1", True)(0), CheckBox)
    For Each row As DataGridViewRow In DataGridView1.Rows
        row.Cells(columnIndexOfCheckBox).Value = headerBox.Checked
    Next
End Sub

使用法:

   Sub Form1Load(sender As Object, e As EventArgs) Handles MyBase.Load
        show_chkBox()
   End Sub

役立つことを願っています

于 2013-02-08T07:33:14.137 に答える