Mega Code Archive

 
Categories / VB.Net / GUI
 

DataRow Collection View

Imports System.Windows.Forms Public Class Form1     Inherits System.Windows.Forms.Form     Private dtSet As DataSet     Private custTable As DataTable     Friend WithEvents DataGrid1 As System.Windows.Forms.DataGrid     Public Shared Sub Main()         Application.Run(New Form1())     End Sub     Public Sub New()         MyBase.New()         Me.DataGrid1 = New System.Windows.Forms.DataGrid()         CType(Me.DataGrid1, System.ComponentModel.ISupportInitialize).BeginInit()         Me.SuspendLayout()         '         Me.DataGrid1.DataMember = ""         Me.DataGrid1.HeaderForeColor = System.Drawing.SystemColors.ControlText         Me.DataGrid1.Location = New System.Drawing.Point(8, 8)         Me.DataGrid1.Name = "DataGrid1"         Me.DataGrid1.Size = New System.Drawing.Size(320, 256)         Me.DataGrid1.TabIndex = 0         '         Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)         Me.ClientSize = New System.Drawing.Size(344, 273)         Me.Controls.AddRange(New System.Windows.Forms.Control() {Me.DataGrid1})         CType(Me.DataGrid1, System.ComponentModel.ISupportInitialize).EndInit()         Me.ResumeLayout(False)     End Sub     Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load         custTable = New DataTable("Customers")         Dim dtColumn As DataColumn         Dim myDataRow As DataRow         dtColumn = New DataColumn()         dtColumn.DataType = System.Type.GetType("System.Int32")         dtColumn.ColumnName = "id"         dtColumn.Caption = "Cust ID"         dtColumn.ReadOnly = False         dtColumn.Unique = True         custTable.Columns.Add(dtColumn)         dtColumn = New DataColumn()         dtColumn.DataType = System.Type.GetType("System.String")         dtColumn.ColumnName = "Name"         dtColumn.Caption = "Cust Name"         dtColumn.AutoIncrement = False         dtColumn.ReadOnly = False         dtColumn.Unique = False         custTable.Columns.Add(dtColumn)         dtColumn = New DataColumn()         dtColumn.DataType = System.Type.GetType("System.String")         dtColumn.ColumnName = "Address"         dtColumn.Caption = "Address"         dtColumn.ReadOnly = False         dtColumn.Unique = False         custTable.Columns.Add(dtColumn)         Dim PrimaryKeyColumns() As DataColumn = New DataColumn(1) {}         PrimaryKeyColumns(0) = custTable.Columns("id")         custTable.PrimaryKey = PrimaryKeyColumns         dtSet = New DataSet("Customers")         dtSet.Tables.Add(custTable)         myDataRow = custTable.NewRow()         myDataRow("id") = 1001         myDataRow("Address") = "CA"         myDataRow("Name") = "G"         custTable.Rows.Add(myDataRow)         myDataRow = custTable.NewRow()         myDataRow("id") = 1002         myDataRow("Name") = "R"         myDataRow("Address") = "CA"         custTable.Rows.Add(myDataRow)         myDataRow = custTable.NewRow()         myDataRow("id") = 1003         myDataRow("Name") = "A"         myDataRow("Address") = "CA"         custTable.Rows.Add(myDataRow)         Dim rows As DataRowCollection = custTable.Rows         Dim counter As Integer         counter = rows.Count         Dim row As DataRow         If rows.Contains(1002) Then             row = rows.Find(1002)             rows.Remove(row)             MessageBox.Show("Row Removed")         Else             MessageBox.Show("Row not found")         End If         Dim newRow As DataRow         newRow = custTable.NewRow()         newRow("id") = 1005         newRow("Address") = "New Address"         newRow("Name") = "New Name"         rows.InsertAt(newRow, 3)         If (Not rows(1).IsNull("id")) Then             rows.RemoveAt(1)         End If         MessageBox.Show(counter.ToString())         DataGrid1.DataSource = dtSet.DefaultViewManager     End Sub End Class