2016-03-29 8 views
1

Gegeben ein vorhandenes DataGrid namens grid.So finden Sie, ob dataGrid eine Spalte enthält

Wenn ich versuche, grid.Columns("column_name") zugreifen erhalte ich eine Ausnahme

Säule nicht, column_name

I

versucht
If Not IsNull(grid.Columns("column_name")) Then '... 

aber ich habe immer noch die Ausnahme gefunden.

würde ich etwas mag, die ich wie

grid.ContainsColumn("column_name") 

Antwort

3

Die Spalten in einem Datagrid nur einen Titeltext haben nennen könnte zu identifizieren, was die Spalte so könnte man so etwas wie dies, um zu überprüfen, ob die Spalte vorhanden Suchen nach einer Spalte mit einer Beschriftung, die dem gesuchten Spaltennamen entspricht.

Private Function DataGrid_CheckColumnExists(dataGrid As dataGrid, columnName As String) 
    Dim columnCount As Long, columnIndex As Long 
    Dim checkColumnName As String 

    columnCount = dataGrid.Columns.Count 

    For columnIndex = 0 To columnCount - 1 
     checkColumnName = dataGrid.Columns(columnIndex).Caption 

     DataGrid_CheckColumnExists = (StrComp(checkColumnName, columnName, vbTextCompare) = 0) 
     If DataGrid_CheckColumnExists Then Exit Function 'No need to continue once we found it 
    Next columnIndex 
End Function 
Verwandte Themen