Posted 5 June 2020, 8:53 am EST
- Designing the Grid using code
‘’—Design the grid
Private Sub GridInfo()
With fgItem
.AllowUserResizing = C1.Win.C1FlexGrid.Classic.AllowUserResizeSettings.flexResizeColumns
.ExplorerBar = C1.Win.C1FlexGrid.Classic.ExplorerBarSettings.flexExSortShow
.SelectionMode = C1.Win.C1FlexGrid.Classic.SelModeSettings.flexSelectionByRow
.TabBehavior = C1.Win.C1FlexGrid.Classic.TabBehaviorSettings.flexTabCells
.FontBold = False
.FixedRows = 1
.FixedCols = 0
.Rows = 1
.Cols = 10
.Width = 668
.Height = 348
.set_ColWidth(0, 0)
.set_TextMatrix(0, 0, “Sn.”)
.set_ColHidden(0, False)
.set_ColWidth(1, 70)
.set_TextMatrix(0, 1, “Item Code”)
.set_ColWidth(2, 70)
.set_TextMatrix(0, 2, “Item Code Gen”)
.set_ColHidden(2, True)
.set_ColWidth(3, 250)
.set_TextMatrix(0, 3, “Item Name”)
.set_ColWidth(4, 80)
.set_TextMatrix(0, 4, “OEM PartNo”)
.set_ColWidth(5, 70)
.set_TextMatrix(0, 5, “Old Code”)
.set_ColWidth(6, 70)
.set_TextMatrix(0, 6, “”)
.set_ColHidden(6, True)
.set_ColWidth(7, 100)
.set_TextMatrix(0, 7, “Unit of Packaging”)
.set_ColHidden(7, True)
.set_ColWidth(8, 70)
.set_TextMatrix(0, 8, “Curr. Bal”)
.set_ColWidth(9, 80)
.set_TextMatrix(0, 9, “BarCode No.”)
End With
End
-
Populate the Gid
‘’—Populate the Grid
Private Sub FillGrid()
Dim strQuery As String
Dim i As Integer
Try
f_DSGrid.Clear()
strQuery = “SELECT ItemID,ItemCode,ItemCodeGen,Description, OEMPartNo, OldCode, UnitPackaging, CurrentBalance, BarCodeNumber FROM ItemMaster ORDER BY Description”
f_DAGrid = New SqlDataAdapter(strQuery, Connect.gl_Connect)
f_DAGrid.Fill(f_DSGrid, “FillGrid”)
fgItem.BeginUpdate()
If f_DSGrid.Tables(“FillGrid”).Rows.Count <> 0 Then
For i = 1 To f_DSGrid.Tables(“FillGrid”).Rows.Count
fgItem.Rows = fgItem.Rows + 1
fgItem.set_TextMatrix(i, 0, fgItem.Rows - 1)
fgItem.set_TextMatrix(i, 1, IIf(IsDBNull(f_DSGrid.Tables(“FillGrid”).Rows(i - 1).Item(“ItemCode”)), “”, f_DSGrid.Tables(“FillGrid”).Rows(i - 1).Item(“ItemCode”)))
fgItem.set_TextMatrix(i, 2, IIf(IsDBNull(f_DSGrid.Tables(“FillGrid”).Rows(i - 1).Item(“ItemCodeGen”)), “”, f_DSGrid.Tables(“FillGrid”).Rows(i - 1).Item(“ItemCodeGen”)))
fgItem.set_TextMatrix(i, 3, IIf(IsDBNull(f_DSGrid.Tables(“FillGrid”).Rows(i - 1).Item(“Description”)), “”, f_DSGrid.Tables(“FillGrid”).Rows(i - 1).Item(“Description”)))
fgItem.set_TextMatrix(i, 4, IIf(IsDBNull(f_DSGrid.Tables(“FillGrid”).Rows(i - 1).Item(“OEMPartNo”)), “”, f_DSGrid.Tables(“FillGrid”).Rows(i - 1).Item(“OEMPartNo”)))
fgItem.set_TextMatrix(i, 5, IIf(IsDBNull(f_DSGrid.Tables(“FillGrid”).Rows(i - 1).Item(“OldCode”)), “-”, f_DSGrid.Tables(“FillGrid”).Rows(i - 1).Item(“OldCode”)))
fgItem.set_TextMatrix(i, 7, IIf(IsDBNull(f_DSGrid.Tables(“FillGrid”).Rows(i - 1).Item(“UnitPackaging”)), “”, f_DSGrid.Tables(“FillGrid”).Rows(i - 1).Item(“UnitPackaging”)))
fgItem.set_TextMatrix(i, 8, IIf(IsDBNull(f_DSGrid.Tables(“FillGrid”).Rows(i - 1).Item(“CurrentBalance”)), “”, f_DSGrid.Tables(“FillGrid”).Rows(i - 1).Item(“CurrentBalance”)))
fgItem.set_TextMatrix(i, 9, IIf(IsDBNull(f_DSGrid.Tables(“FillGrid”).Rows(i - 1).Item(“BarCodeNumber”)), “”, f_DSGrid.Tables(“FillGrid”).Rows(i - 1).Item(“BarCodeNumber”)))
Next
fgItem.EndUpdate()
fgItem.Row = 1
fgItem.Select()
End If
f_DSGrid.Clear()
f_DSGrid.Dispose()
f_DAGrid.Dispose()
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Information, Connect.sayDeta)
End Try
End Sub
-
Searching in Grid… This is very slow now
‘’---------Search in Grid — It is taking too much time
Private Sub txtsearch_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtsearch.TextChanged
Dim intLoop, intLoop1, intLength, intRowFound As Integer
intLength = Len(txtsearch.Text)
If fgItem.Rows > 1 Then
For intLoop1 = 0 To fgItem.Cols - 1
For intLoop = 1 To fgItem.Rows - 1
If LCase(txtsearch.Text) = LCase(Mid(fgItem.get_TextMatrix(intLoop, intLoop1), 1, intLength)) Then
f_intRowFound = intLoop
fgItem.Row = intRowFound
fgItem.TopRow = intRowFound
Exit Sub
Else
fgItem.Row = intRowFound
fgItem.TopRow = intRowFound
End If
Next
Next
End If
End Sub