Posted 26 April 2020, 1:09 pm EST
Hello,
How do I modify the code below to view the correct record count of the Grid, the code below with rowcount does not work because the number does not change when the record count changes.
Private Sub Button12_Click(sender As System.Object, e As System.EventArgs) Handles Button12.Click
Dim FilteredDTA As DataTable
If RadioButton1.Checked Then
Dim xyz As String = “”
If C1TrueDBGrid2.SelectedRows.Count = 0 Then
For row1 = 0 To C1TrueDBGrid1.SelectedRows.Count - 1
xyz = xyz + “[” + C1Screen1.Columns(“SN”).Caption + “] LIKE’” + C1TrueDBGrid1.Columns(“CHPT”).CellText(C1TrueDBGrid1.SelectedRows(row1)) + “%’ OR”
Next
ElseIf C1TrueDBGrid1.SelectedRows.Count = 0 Then
For row = 0 To C1TrueDBGrid2.SelectedRows.Count - 1
Dim str As String
str = C1TrueDBGrid2.Columns(“COUNTRY”).CellText(C1TrueDBGrid2.SelectedRows(row))
xyz = xyz + “[” + C1Screen1.Columns(“COUNTRY”).Caption + “]='” + str + “’ OR”
Next
Else
For row = 0 To C1TrueDBGrid2.SelectedRows.Count - 1
Dim str As String
str = C1TrueDBGrid2.Columns(“COUNTRY”).CellText(C1TrueDBGrid2.SelectedRows(row))
For row1 = 0 To C1TrueDBGrid1.SelectedRows.Count - 1
xyz = xyz + “[” + C1Screen1.Columns(“COUNTRY”).Caption + “]='” + str + “’ AND [” + C1Screen1.Columns(“SN”).Caption + “] LIKE’” + C1TrueDBGrid1.Columns(“CHPT”).CellText(C1TrueDBGrid1.SelectedRows(row1)) + “%’ OR”
Next
Next
End If
xyz = xyz.Remove(xyz.Length - 3, 3)
Console.WriteLine(xyz)
fsLinkTest = New System.IO.FileStream(Application.StartupPath + “\AOP40.xml”, IO.FileMode.Open)
dtsetLinkTest.Clear()
dtsetLinkTest.ReadXml(fsLinkTest)
fsLinkTest.Close()
FilteredDTA = dtsetLinkTest.Tables(0)
Dim view As DataView
view = New DataView(FilteredDTA)
view.RowFilter = xyz
C1Screen1.Refresh()
C1Screen1.DataSource = view
End If
If RadioButton2.Checked Then
Dim xyz As String = “”
If C1TrueDBGrid1.SelectedRows.Count = 0 Then
For row = 0 To C1TrueDBGrid2.SelectedRows.Count - 1
Dim str As String
str = C1TrueDBGrid2.Columns(“COUNTRY”).CellText(C1TrueDBGrid2.SelectedRows(row))
xyz = xyz + “[” + C1Screen1.Columns(“COUNTRY”).Caption + “]='” + str + “’ OR”
Next
Else
For row = 0 To C1TrueDBGrid2.SelectedRows.Count - 1
For row1 = 0 To C1TrueDBGrid1.SelectedRows.Count - 1
Dim str As String
str = C1TrueDBGrid2.Columns(“COUNTRY”).CellText(C1TrueDBGrid2.SelectedRows(row))
xyz = xyz + “[” + C1Screen1.Columns(“COUNTRY”).Caption + “]='” + str + “’ AND [” + C1Screen1.Columns(“SN”).Caption + “] LIKE’” + C1TrueDBGrid1.Columns(“CHPT”).CellText(C1TrueDBGrid1.SelectedRows(row1)) + “%’ OR”
Next
Next
End If
xyz = xyz.Remove(xyz.Length - 3, 3)
Console.WriteLine(xyz)
fsLinkTest = New System.IO.FileStream(Application.StartupPath + “\AOP40.xml”, IO.FileMode.Open)
dtsetLinkTest.Clear()
dtsetLinkTest.ReadXml(fsLinkTest)
fsLinkTest.Close()
FilteredDTA = dtsetLinkTest.Tables(0)
Dim view As DataView
view = New DataView(FilteredDTA)
view.RowFilter = xyz
C1Screen1.Refresh()
C1Screen1.DataSource = view
Dim visible = True
For row = 0 To C1Screen1.Splits(0).Rows.Count - 1
visible = False
For row1 = 0 To C1Screen1.Splits(0).Rows.Count - 1
If row <> row1 Then
If C1Screen1.Columns(“SN”).CellValue(row) = C1Screen1.Columns(“SN”).CellValue(row1) AndAlso C1Screen1.Columns(“COUNTRY”).CellValue(row) <> C1Screen1.Columns(“COUNTRY”).CellValue(row1) Then
visible = True
Exit For
End If
End If
Next
C1Screen1.Splits(0).Rows(row).Visible = visible
Next
End If
'View Grid
If C1Screen1.RowCount <> 0 Then
C1Screen1.Visible = True
TextBox1.Text = C1Screen1.RowCount '*****Does not work
End If
End Sub