我有一个高级数据网格视图,即NameTable。在高级Datagrid视图中使用过滤器选项时,前两行不应进行过滤或排序。过滤器选项应仅在第二行之后适用。
Public Class Form1
Public DtTable As DataTable
Private SBind As BindingSource = New BindingSource()
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
DtTable = New DataTable
With DtTable
.Columns.Add(" Name", GetType(String))
.Columns.Add("Age" + vbLf + " (kg/hr)", GetType(String))
.Columns.Add("Subject ", GetType(String))
.Columns.Add(" Marks")
End With
Dim dr As DataRow
For i = 0 To 1
dr = DtTable.NewRow()
dr(0) = vbNullString
dr(1) = vbNullString
Select Case i
Case 0
dr(2) = "Maths"
Case 1
dr(2) = "Science "
End Select
DtTable.Rows.Add(dr)
Next
dr = DtTable.NewRow()
dr(0) = "Mark"
dr(1) = "18"
dr(2) = vbNullString
dr(3) = "98"
DtTable.Rows.Add(dr)
dr = DtTable.NewRow()
dr(0) = "Rachel"
dr(1) = "18"
dr(2) = vbNullString
dr(3) = "60"
DtTable.Rows.Add(dr)
SBind.DataSource = DtTable
DataGridView1.DataSource = SBind
End Sub
Private Sub IPFSourceADGV_SortStringChanged(sender As Object, e As EventArgs) Handles IPFSourceADGV.SortStringChanged
Me.SBind.Sort = Me.IPFSourceADGV.SortString
End Sub
Private Sub datagridview1_SortStringChanged(sender As Object, e As EventArgs) Handles datagridview1.SortStringChanged
Me.SBind.Sort = Me.datagridview1.SortString
End Sub
Private Sub datagridview1_FilterStringChanged(sender As Object, e As EventArgs) Handles datagridview1.FilterStringChanged
Me.SBind.Filter = Me.datagridview1.FilterString
End Sub
End Class
这只是过滤整个表。
Dim DtTable As DataTable = New DataTable
With DtTable
.Columns.Add(" Name", GetType(String))
.Columns.Add("Age" + vbLf + " (kg/hr)", GetType(String))
.Columns.Add("Subject ", GetType(String))
.Columns.Add(" Marks")
End With
For Each row As DataRow In DtTable.Rows
If DtTable.Rows.Count <> 0 Then
If DtTable.Rows.IndexOf(row) > 2 Then
' filter
End If
End If
Next
我不知道我是否正确理解...
这样,您可以在表格的第二行之后工作。告诉我。