Public Class Form1
Inherits System.Windows.Forms.Form
' Here was Form Generated Code
Dim myDataSet As New DataSet()
Dim myDataTable As New DataTable("Table1")
Private OldRow As Integer
Private OldCol As Integer
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles MyBase.Load
Dim tableStyle As New DataGridTableStyle()
tableStyle.MappingName = "Table1"
Dim column As New FormattableTextBoxColumn()
column.MappingName = "ICode"
column.HeaderText = "ICode"
column.Width = 60
tableStyle.GridColumnStyles.Add(column)
column = New FormattableTextBoxColumn()
column.MappingName = "Name"
column.HeaderText = "Name"
column.Width = 140
tableStyle.GridColumnStyles.Add(column)
column = New FormattableTextBoxColumn()
column.MappingName = "Qty"
column.HeaderText = "Qty"
column.Width = 40
AddHandler column.CellTextBoxChanged, AddressOf QtyTextBoxChanged
tableStyle.GridColumnStyles.Add(column)
column = New FormattableTextBoxColumn()
column.MappingName = "Rate"
column.HeaderText = "Rate"
column.Width = 40
tableStyle.GridColumnStyles.Add(column)
column = New FormattableTextBoxColumn()
column.MappingName = "Amount"
column.HeaderText = "Amount"
column.Width = 80
tableStyle.GridColumnStyles.Add(column)
Me.DataGrid1.TableStyles.Add(tableStyle)
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button1.Click
Dim datColumn As New DataColumn("ICode", System.Type.GetType("System.Int16"))
myDataTable.Columns.Add(datColumn)
datColumn = New DataColumn("Name", System.Type.GetType("System.String"))
myDataTable.Columns.Add(datColumn)
datColumn = New DataColumn("Qty", System.Type.GetType("System.Int16"))
myDataTable.Columns.Add(datColumn)
datColumn = New DataColumn("Rate", System.Type.GetType("System.Decimal"))
myDataTable.Columns.Add(datColumn)
datColumn = New DataColumn("Amount", System.Type.GetType("System.Decimal"))
myDataTable.Columns.Add(datColumn)
myDataSet.Tables.Add(myDataTable)
AddMenuItem(101, "Coffee", 4, 25)
AddMenuItem(102, "Tamato Soup", 2, 20)
AddMenuItem(103, "Pizza", 2, 80)
AddMenuItem(104, "Ice Cream", 8, 35)
AddMenuItem(105, "Cold Drink", 2, 15)
Me.DataGrid1.SetDataBinding(myDataSet, "Table1")
End Sub
Private Sub AddMenuItem(ByVal pICode As Int16, ByVal pIName As String, ByVal pQty As
Int16, ByVal pRate As Decimal)
Dim tt As DataTable
tt = myDataTable
Dim dr As DataRow = tt.NewRow
dr(0) = pICode
dr(1) = pIName
dr(2) = pQty
dr(3) = pRate
dr(4) = pQty * pRate
myDataTable.Rows.Add(dr)
End Sub
Private Sub QtyTextBoxChanged(ByVal sender As Object, ByVal e As System.EventArgs)
If Not (OldRow = Me.DataGrid1.CurrentCell.RowNumber And OldCol =
Me.DataGrid1.CurrentCell.ColumnNumber) Then
OldRow = Me.DataGrid1.CurrentCell.RowNumber
OldCol = Me.DataGrid1.CurrentCell.ColumnNumber
Exit Sub
Else
With Me.DataGrid1
.Item(.CurrentRowIndex, 4) = Val(.Item(.CurrentRowIndex, 2)) *
Val(.Item(.CurrentRowIndex, 3))
End With
MsgBox("Event Fired")
End If
End Sub
End Class