 |
|
เพิ่ม combobox เข้าไปใน datagrid แล้ว มันบันทึกข้อมูลแต่แถวแรก |
|
 |
|
|
 |
 |
|
debug i ดูสิครับว่า
รอบที่ 1 i = 0
รอบที่ 2 i = 1 รึเปล่า
อ้ออีกอย่าง
For i = 0 To drugdetailDGV.Rows.Count ครับ

|
 |
 |
 |
 |
Date :
2010-12-15 21:47:20 |
By :
สวดยวด |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ดู no 1 ครับ หากใช้ loop เราควร debug ดูได้
ปัญหาอาจง่ายกว่าที่คุณคิด
|
 |
 |
 |
 |
Date :
2010-12-15 21:56:54 |
By :
pjgunner.com |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
เปลี่ยน drugdetailDGV.CurrentRows เป็น drugdetailDGV.Rows(i)
แต่คราวหลัง ลองศึกษาเรี่อง DataAdapter ดูนะครับ
เพราะปกติเค้าใช้ตัวนี้ในการ Update ข้อมูล
Code (VB.NET)
comdetail.Connection = MyConnect ' เอาบรรทัดนี้ไว้นอกลูป ดีกว่า
For i = 0 To drugdetailDGV.Rows.Count - 1
if Not drugdetailDGV.Rows(i).IsNewRow Then
col1 = drugdetailDGV.Rows(i).Cells(0).Value
If col1 <> "" Then
comdetail.CommandText = "insert into drug_detail (de_name,de_result,d_id) values('" & drugdetailDGV.Rows(i).Cells(0).Value & "','" & drugdetailDGV.Rows(i).Cells(1).Value & "' ,'" & d_id & "')"
comdetail.ExecuteNonQuery()
End If
End If
Next
|
ประวัติการแก้ไข 2010-12-16 08:20:22
 |
 |
 |
 |
Date :
2010-12-16 08:17:35 |
By :
หางอึ่ง |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|

|
ประวัติการแก้ไข 2010-12-16 08:41:45
 |
 |
 |
 |
Date :
2010-12-16 08:40:59 |
By :
noizeless |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ขอบคุณทุกท่านมากครับ
รบกวนถามต่ออีกนิดครับ ตรงส่วนของการแก้ไขข้อมูล datagrid นะครับผมจะีใช้ event ที่พอแก้แล้วมันจะ save เลย

ดังโค้ดด้านล่างครับ
Code (VB.NET)
Private Sub drugdetailDGV_CellValueChanged(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles drugdetailDGV.CellValueChanged
UseConnectDatabase()
Dim com As New MySqlCommand
Dim adap As New MySqlDataAdapter
Dim ds As New DataSet
If (TabControl1.SelectedIndex = 0) Then
'MsgBox(e.RowIndex)
com.CommandText = "update drug_detail set de_name='" & drugdetailDGV.CurrentRow.Cells(1).Value & "',de_result='" & drugdetailDGV.CurrentRow.Cells(2).Value & "' where de_id='" & drugdetailDGV.CurrentRow.Cells(0).Value & "'"
com.Connection = MyConnect
'MsgBox(e.GetHashCode())
com.ExecuteNonQuery()
End If
End Sub
ที่ผมจะทำต่อคือ คอลัมผลการตรวจผมอยากให้แสดงผลตามที่บันทึกไว้ในฐานข้อมูล
แต่แสดงใน combobox แล้วเลือกได้เหมือนตอนเพิ่มเช่นกัน
ถ้าแสดงเป็น text ดังรูปรูปด้านบนได้ครับ
Code (VB.NET)
column = New DataGridViewTextBoxColumn()
column.DataPropertyName = "de_result"
column.HeaderText = "ผลการตรวจ"
column.Width = 100
Me.drugdetailDGV.Columns.Add(column)
ผมลองทำแบบเหมือนตอนเพิ่มมันไม่ผ่านครับ
เพราะอยากให้มันแสดงผลเป็น combobox
Code (VB.NET)
column = New DataGridViewComboBoxColumn
column.DataPropertyName = "de_result"
column.HeaderText = "ผลการตรวจ"
column.Items.Add("พบ")
column.Items.Add("ไม่พบ")
column.Width = 100
Me.drugdetailDGV.Columns.Add(column)
|
ประวัติการแก้ไข 2010-12-16 14:27:02
 |
 |
 |
 |
Date :
2010-12-16 14:23:41 |
By :
narubet |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
เอา datagridview มาใช้เก็บ data แล้วเรียกใช้ด้วยเหรอ หุหุ
แถวบ้านใช้ datatable นะ เจ้า datagridview ใช้แค่แสดงผลเฉยๆ (บอกเป็นครั้งที่ 100)
ส่วนจะ edit datagridview ก็ใช้ event cellenter กับ cellleave
|
 |
 |
 |
 |
Date :
2010-12-16 14:39:09 |
By :
ตังค์แมน |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ออถามไรหน่อยครับ เจ้าของกระทู้ ใส่Combo เข้าไปไงหรอครับ อยากรู้ว่าใช้วิธีไร เพราะที่ผมใช้ มันดูยุ่งยากไงไม่รู้ครับ ช่วยแนะนำทีครับ
|
 |
 |
 |
 |
Date :
2010-12-16 17:05:21 |
By :
exclusiveM |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
เข้าของ ม่ะมาตอบผมหน่อยหรอครับ - -
|
 |
 |
 |
 |
Date :
2010-12-17 08:44:00 |
By :
exclusiveM |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
การเพิ่ม combobox เข้าไปในด้าตา้กริดครับ
Code (VB.NET)
column = New DataGridViewComboBoxColumn
column.HeaderText = "ผลการตรวจ"
column.Items.Add("พบ")
column.Items.Add("ไม่พบ")
column.Width = 100
Me.drugdetailDGV.Columns.Add(column)
|
 |
 |
 |
 |
Date :
2010-12-17 15:03:22 |
By :
narubet |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ว้า ก็แนะนำเฉยๆ เอง
มันก็ไม่ผิดหรอก แต่ว่ามันยุ่งยาก ควรทำงานโดยใช้ datatable เป็นตัวกลาง
จะง่ายกว่าเรีบกจาก datagridview โดยตรง แล้วก็ยังคงรูปของ type ข้อมูลเดิมไว้อยู่เหมือนเดิมด้วย
แต่ก็อยากทำอะไรก็ทำแล้วกันนะ แล้วแต่สะดวก
|
 |
 |
 |
 |
Date :
2010-12-20 11:23:01 |
By :
ตังค์แมน |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|