February 17, 2009

Menghapus Baris Pada DataGridView



Masih seputar DataGridView, sekarang kita membahas bagaimana menghapus baris pada DataGridView. cara nya sangat mudah, masih menggunakan DataBase dan Table yang sama (artikel sebelumnya) ketikkan sintaks berikut :

 Private Sub DataGridView1_UserDeletingRow(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewRowCancelEventArgs) Handles DataGridView1.UserDeletingRow
        Dim id As String = e.Row.Cells("ISBN").FormattedValue.ToString()'Mengambil value untuk pada field ISBN
        Dim name As String = e.Row.Cells("Title").FormattedValue.ToString() 'Mengambil Value untuk field Title
'Menampilkan windows dialog
        Dim result As DialogResult = MessageBox.Show("Are you sure you want to delete ISBN " & id & " - " & name & "?", "Delete?", MessageBoxButtons.OKCancel)
'Jika button Cancel yang di pilih maka proses akan di hapus.
        If result = DialogResult.Cancel Then
                        e.Cancel = True
        End If

Note : Untuk menghapus tekan tombol "Delete" pada keyboard. Dan proses ini tidak menghapus baris pada Table tapi hanya pada tampilan DataGridView

Wassalam

Menambahkan Control DrodpDownList Pada DataGrid View


Artikel ini masih berkaitan dengan DataGridView, kenapa banyak sekali artikel/tips penulis seputar DatGridView??? Karena Component ini sangat sering digunakan oleh para developer, jadi harus terus di gali fungsi-fungsi nya. Langsung masuk aja ke pembahasan, sesuai dengan judul nya menambahkan control DropDownList pada DataGridView. Untuk .Net Framework 2.0 keatas, cara ini tidak sesulit atau serumit pada versi di bawah nya..
Di asumsikan kita sudah memiliki Database dengan nama Table "T_Titles", dan salah satu field nya adalah "Authors". 
Note : Untuk cara koneksi ke Database di asumsikan sudah bisa, jika belum silahkan liat artikel penulis yang pertama.
Berikut sintaks nya.. (ketik sintaks ini pada  Private Sub F_DataGrid_Load)

       'Start Menampilkan data pada Datagrid View
        Dim cmd As OleDbCommand = New OleDbCommand("Select * from T_Titles",           myconnection.open)
        cmd.CommandType = CommandType.Text
        Dim adapter As OleDbDataAdapter = New OleDbDataAdapter(cmd)
        Dim datatbl As DataTable = New DataTable
        Dim ds As DataSet = New DataSet()
        ' Mengambil info column (Read-only).
        adapter.FillSchema(ds, SchemaType.Mapped, "Titles")
        ' Isi table
        adapter.Fill(ds, "Titles")
        datatbl = ds.Tables("Titles")
        myconnection.close()
        DataGridView1.DataSource = datatbl
        'Finish Menampilkan data pada Datagrid View

        'Menghapus auto generate Authors Colomn
        DataGridView1.Columns.Remove("Authors")
       'Membuat List columns untuk Authors field
        Dim listCol As DataGridViewComboBoxColumn = New DataGridViewComboBoxColumn()
        'Posisi column nomor 2
        listCol.DisplayIndex = 1
        'Nama Header= "Authors"
        listCol.HeaderText = "Authors"

        'Masukkan nama field pada table yang akan di buat listcolom
        listCol.DataPropertyName = "Authors"
       'Mengisi list dari T_Titles table
        listCol.DataSource = ds.Tables("Titles")
        listCol.DisplayMember = "Authors"
        listCol.ValueMember = "Authors"
       'Tambahkan column
        DataGridView1.Columns.Add(listCol)

Selamat mencoba...
Wassalam..

February 2, 2009

Membuat Auto Complete pada ComboBox di Vb.Net 2003

Wahh..udah lama ya ga posting artikel.... Lagi ada kerjaan dikit :). Yang penting pertanyaan dari rekan-rekan masih biasa ke jawab kan????
Artikel kali ini adalah berkenaan dengan control pada Vb.NEt 2003 yaitu ComboBox, kalau pada artikel sebelumnya, pernah saya menjelaskan bagaimana membuat AutoCompleted pada TextBox dan ComboBox pada Vs 2005 keatas. Tentu pada VS 2003 tidak tersedia fasilitas auto complete seperti pada VS 2005, tapi itu semua bisa di akalin, walaupun tidak sehebat fitur auto completed yang ada pada saat ini.. So, sekarang kita masuk ke codingnya aja langsung...
Di asumsikan kita memiliki ComboBox dengan nama CbGolDarah.. Pada Event KeyPress untuk CbGolDarah ketik sintaks di bawah.


Try
If Char.IsControl(e.KeyChar) Then Return
With CbGolDarah
Dim ToFind As String = .Text.Substring(0, .SelectionStart) & e.KeyChar
Dim Index As Integer = .FindStringExact(ToFind)
If Index = -1 Then Index = .FindString(ToFind)
If Index = -1 Then Return
.SelectedIndex = Index
.SelectionStart = ToFind.Length
.SelectionLength = .Text.Length - .SelectionStart
e.Handled = True
End With
Catch ex As Exception
MsgBox(ex.Message)
End Try

selamat mencoba..
wassalam...