2017-08-02 85 views
0

我有這個問題,當我在datagridview的列1中的單元格內容時,如何使複選框狀態更改?複選框狀態基於Datagridview的單元格內容列

例如:

我有這樣的datagridview具有兩列,列1和列2

列1 - 表示的數字/整數像1或2 和 柱2 - 的DataGridView CheckBoxColumn

案例是:

如果小區的列中的值1 = 1,這是在DataGridView CheckBoxColumn第2欄,複選框狀態「經過」

如果

我如何做到這一點在vb.net代碼單元的第1列= 2,列2中的值,其在DataGridView CheckBoxColumn,複選框狀態是「未選中狀態」?

回答

0

您需要遍歷網格的每一行,然後進行比較來設置的CheckBox

For Each row As DataGridViewRow in yourGrid.Rows 
    If row.Columns("Column1").Value = 1 Then 
     row.Columns("Column2").Value = True 
    Else 
     row.Columns("Column2").Value = False 
    End If 
Next 
0

值可以與一個事件上你的使用:

Public Class Form1 

Private Sub Val_change(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles DataGridView1.CellValidated 
    Dim val As String = Me.DataGridView1.CurrentCell.Value 
    If val = "1" Then 
     DataGridView1.Rows(0).Cells(1).Value = True 
    Else 
     DataGridView1.Rows(0).Cells(1).Value = False 
    End If 
End Sud 
End Class 
0

如果使用DataTable綁定到數據網格視圖,請嘗試將新的表達式列添加到數據表並將其綁定到DataGridView中的複選框列。

新表達式列可以像下面

Dim checkBoxColumn As DataColumn = New DataColumn 
With checkBoxColumn 
    .DataType = System.Type.GetType("System.Boolean") 
    .ColumnName = "CheckBoxColumn" 
    .Expression = "IIF(Column1=1 ,True,False)" 
End With 

'add the new column to your dataTale 
myTable.Columns.Add(checkBoxColumn) 
相關問題