Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,038

HOME > .NET Framework > Forum > สอบถามเรื่องการ binding ข้อมูลของ combobox แล้วไม่ผ่านค่ะ


 

[.NET] สอบถามเรื่องการ binding ข้อมูลของ combobox แล้วไม่ผ่านค่ะ

 
Topic : 063742



โพสกระทู้ ( 14 )
บทความ ( 0 )



สถานะออฟไลน์



สืบเนื่องจากกระทู้นี้ค่ะ
https://www.thaicreate.com/dotnet/forum/062600.html

จะทำ combobox ดังภาพนี้ค่ะ
combobox
(คณะคือ Dep1 และ สาขาคือ Dep2)

ภาพนี้คือที่combobox แสดงค่ะ
error

หลังจากคราวก่อนก็เว้นว่างการทำโปรเจ็คไปพักนึง
พอมาเริ่มทำไม เลยงงๆกับการbinding ไม่แน่ใจว่าbind ข้อมูลลงcombobox ผิดตรงไหน เพราะมันไม่แสดงเลยค่ะ

อันนี้ในส่วนฟอร์มโหลด
Code (VB.NET)
01.sb = New StringBuilder()
02.        sb.Append("SELECT * FROM tbl_preT;")
03.        sb.Append("SELECT * FROM tbl_preE;")
04.        sb.Append("SELECT * FROM tbl_type;")
05.        sb.Append("SELECT * FROM tbl_campus;")
06.        sb.Append("SELECT * FROM tbl_dep1 ORDER BY dep1Name;")
07.        sb.Append("SELECT * FROM tbl_dep2 ORDER BY dep2Name;")
08. 
09.        Dim sqlIni As String
10.        sqlIni = sb.ToString()
11. 
12.        RemoveHandler cboPreT.SelectedValueChanged, AddressOf cboPreT_SelectedValueChanged
13.        RemoveHandler cboPreE.SelectedValueChanged, AddressOf cboPreE_SelectedValueChanged
14.        RemoveHandler cboCampus.SelectedValueChanged, AddressOf cboCampus_SelectedValueChanged
15.        RemoveHandler cboDep1.SelectedValueChanged, AddressOf cboDep1_SelectedValueChanged
16.        RemoveHandler cboDep2.SelectedValueChanged, AddressOf cboDep2_SelectedValueChanged
17.        RemoveHandler cboType.SelectedValueChanged, AddressOf cboType_SelectedValueChanged
18. 
19.        com = New SqlCommand()
20.        With com
21.            .CommandText = sqlIni
22.            .CommandType = CommandType.Text
23.            .Connection = Conn
24. 
25.            dr = .ExecuteReader()
26.            If dr.HasRows Then
27. 
28.                dtPreT = New DataTable
29.                dtPreT.Load(dr)
30.                With cboPreT
31.                    .BeginUpdate()
32.                    .DisplayMember = "preTNameS"
33.                    .ValueMember = "preTID"
34.                    .DataSource = dtPreT
35.                    .EndUpdate()
36.                End With
37. 
38.                dtPreE = New DataTable
39.                dtPreE.Load(dr)
40.                With cboPreE
41.                    .BeginUpdate()
42.                    .DisplayMember = "preENameS"
43.                    .ValueMember = "preEID"
44.                    .DataSource = dtPreE
45.                    .EndUpdate()
46.                End With
47. 
48.                dtType = New DataTable
49.                dtType.Load(dr)
50.                With cboType
51.                    .BeginUpdate()
52.                    .DisplayMember = "typeName"
53.                    .ValueMember = "typeID"
54.                    .DataSource = dtType
55.                    .EndUpdate()
56.                End With
57. 
58.                dtCampus = New DataTable
59.                dtCampus.Load(dr)
60.                With cboCampus
61.                    .BeginUpdate()
62.                    .DisplayMember = "CampusNameS"
63.                    .ValueMember = "campusID"
64.                    .DataSource = dtCampus
65.                    .EndUpdate()
66.                End With
67. 
68.                dtDep1 = New DataTable
69.                dtDep1.Load(dr)
70.                With cboDep1
71.                    .BeginUpdate()
72.                    .DisplayMember = "dep1Name"
73.                    .ValueMember = "dep1ID"
74.                    .DataSource = dtDep1
75.                    .EndUpdate()
76.                End With
77. 
78.                 
79. 
80.                dtDep2 = New DataTable
81.                dtDep2.Load(dr)
82.                da = New SqlDataAdapter(sqlIni, Conn)
83.                da.Fill(ds, "tbl_dep1")
84.                With cboDep2
85.                    .BeginUpdate()
86.                    .DisplayMember = "dep2Name"
87.                    .ValueMember = "dep2ID"
88.                    '  .DataSource = dtDep2
89.                    .DataSource = ds.Tables("tbl_dep1")
90.                    .EndUpdate()
91.                End With


ส่วนอันนี้ในส่วนSelectedValueCanged ของcombobox cboDep1 (คณะ)
01.Private Subh cboDep1_SelectedValueCanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboDep1.SelectedValueChanged
02.        Dim strConn As String
03.        strConn = DBConnString.strConn
04.        Conn = New SqlConnection()
05. 
06.        With Conn
07.            If .State = ConnectionState.Open Then .Close()
08.            .ConnectionString = strConn
09.            .Open()
10.        End With
11. 
12.        sb = New StringBuilder()
13.        sb.Append("SELECT * FROM tbl_dep1;")
14.        sb.Append("WHERE dep1ID ='" & cboDep2.SelectedValue.ToString & "'")
15. 
16.        Dim sqlIni As String
17.        sqlIni = sb.ToString()
18. 
19.        Dim sqlSelect As String = ""
20. 
21.        If isFind2 = True Then
22.            ds.Tables("tbl_dep1").Clear()
23.        End If
24. 
25.        da = New SqlDataAdapter(sqlSelect, Conn)
26.        da.Fill(ds, "tbl_dep1")
27.        With cboCampus
28.            .DataSource = ds.Tables("tbl_dep1")
29.            .DisplayMember = "dep1Name"
30.            .ValueMember = "dep1ID"
31.        End With
32.        isFind2 = True
33.        iDep1.SelectedValue = cboDep1.SelectedValue
34.    End Sub




Tag : .NET, MySQL, Ms SQL Server 2005, VS 2005 (.NET 2.x)

Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2011-07-26 10:57:44 By : jernnrej View : 1629 Reply : 15
 

 

No. 1



โพสกระทู้ ( 437 )
บทความ ( 0 )



สถานะออฟไลน์


บรรทัดที่ 1 - 10 ผิดครับ

Append เป็นการเอา String มาต่อกัน ดังนั้นจะทำให้ SQL String ผิดแน่ๆ ที่เหลือยังไม่ได้อ่าน
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-07-26 11:05:29 By : kaimuk
 

 

No. 2



โพสกระทู้ ( 14 )
บทความ ( 0 )



สถานะออฟไลน์


ถ้าเป็นในส่วนฟอร์มโหลด
มันก็ดึงข้อมูลมาได้ปกตินี่ค่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-07-26 11:29:33 By : jernnrej
 

 

No. 3



โพสกระทู้ ( 437 )
บทความ ( 0 )



สถานะออฟไลน์


sb.Append("SELECT * FROM tbl_dep1;") ให้เปลี่ยนเป็น sb.Append("SELECT * FROM tbl_dep1 ")

(บรรทัดที่ 13 ของ Code ชุด 2)
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-07-26 11:51:44 By : kaimuk
 

 

No. 4



โพสกระทู้ ( 14 )
บทความ ( 0 )



สถานะออฟไลน์


อันนี้ส่วนฟอร์มโหลดนะคะ
Code (VB.NET)
01.dtDep2 = New DataTable
02.                dtDep2.Load(dr)
03.                da = New SqlDataAdapter(sqlIni, Conn)
04.                da.Fill(ds, "tbl_dep1")
05.                With cboDep2
06.                    .BeginUpdate()
07.                    .DisplayMember = "dep2Name"
08.                    .ValueMember = "dep2ID"
09.                    .DataSource = dtDep2
10.                    '.DataSource = ds.Tables("tbl_dep1")
11.                    .EndUpdate()
12.                End With


มันมีปัญหาตรงที่ว่า .DataSource = dtDep2 ถ้าใช้ตัวนี้ ข้อมูลออกปกติค่ะ
แต่พอbinding แล้วเปลี่ยนมาเป็น .DataSource = ds.Tables("tbl_dep1") ทีนี้ก็เลยไม่แน่ใจในส่วนการ binding ข้อมูลนะคะ ว่าเขียนแบบนี้ถูกรึเปล่า
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-07-26 12:08:06 By : jernnrej
 

 

No. 5



โพสกระทู้ ( 437 )
บทความ ( 0 )



สถานะออฟไลน์


Code ผิดก็แค่ตรงที่ให้แก้แหละครับ SQL ผิด (ความคิดเห็นที่ 3) แต่จริงๆแล้วมันน่าจะ Error ไม่น่าจะผ่านไปเฉยๆ ขอดู Code ทั้งหมดได้ไหมครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-07-26 15:19:05 By : kaimuk
 

 

No. 6



โพสกระทู้ ( 14 )
บทความ ( 0 )



สถานะออฟไลน์


ลองตามนี้แล้วนะคะ

sb.Append("SELECT * FROM tbl_dep1;") ให้เปลี่ยนเป็น sb.Append("SELECT * FROM tbl_dep1 ")
(บรรทัดที่ 13 ของ Code ชุด 2)

แต่ก็ยังเหมือนเดิมค่ะ

อันนี้
โค้ดทั้งหมดค่ะ


Code (VB.NET)
0001.Option Explicit On
0002.Option Strict On
0003.Imports System.IO
0004.Imports System.Text
0005.Imports System.Data
0006.Imports System.Data.SqlClient
0007.Imports System.Drawing.Drawing2D
0008.Imports System.Drawing.Printing
0009.Public Class frmPeople
0010.    Dim Conn As SqlConnection
0011.    Dim com As SqlCommand
0012.    Dim dr As SqlDataReader
0013.    Dim dtPreT As DataTable
0014.    Dim dtPreE As DataTable
0015.    Dim dtType As DataTable
0016.    Dim dtCampus As DataTable
0017.    Dim dtDep1 As DataTable
0018.    Dim dtDep2 As DataTable
0019.    ' Dim dtPrivilege As DataTable
0020.    Dim dtPeople As DataTable
0021.    Dim bs As BindingSource = New BindingSource()
0022.    Dim tr As SqlTransaction
0023.    Dim sb As StringBuilder
0024. 
0025.    Dim AllPeople As Integer = 0
0026.    Dim TeacherPeople As Integer = 0
0027.    Dim StaffPeople As Integer = 0
0028.    Dim OtherPeople As Integer = 0
0029. 
0030.    Dim ActionFlag As String
0031.    Dim Duration As Integer = 0
0032.    Dim SearchPeople As String = "0"
0033.    Dim SubjectDetail As String = "0"
0034. 
0035.    Dim fs As FileStream
0036.    Dim CurrentImage() As Byte
0037.    Dim peoplePicture As String
0038.    Dim IsPictureChange As Boolean = False
0039. 
0040.    Dim UseFont As New Font("MS Sans Serif", 10)
0041.    ' Dim prDoc As PrintDocument = New PrintDocument
0042.    Dim prDlg As PrintDialog = New PrintDialog
0043.    Dim CustomerTypeName As String
0044. 
0045.    Dim sw As New Stopwatch()
0046.    Dim ProcessTime As Double
0047.    Dim _ToolStripLabel As New ToolStripLabel
0048. 
0049.    Dim iCustomerID As New TextBox
0050.    Dim iFnameT As New TextBox
0051.    Dim iFnameE As New TextBox
0052.    Dim iLnameT As New TextBox
0053.    Dim iLnameE As New TextBox
0054.    Dim iSname As New TextBox
0055.    Dim itel As New TextBox
0056.    Dim imobile As New TextBox
0057.    Dim iposition As New TextBox
0058.    Dim iemailU1 As New TextBox
0059.    Dim iemailU2 As New TextBox
0060.    Dim iemailP1 As New TextBox
0061.    Dim iemailP2 As New TextBox
0062.    Dim itoStudy As New TextBox
0063.    Dim itoWork As New TextBox
0064.    Dim itoPortfolio As New TextBox
0065.    Dim iRemark As New TextBox
0066.    Dim iPreT As New ComboBox
0067.    Dim iPreE As New ComboBox
0068.    Dim iSex As New ComboBox
0069.    Dim iCampus As New ComboBox
0070.    Dim iDep1 As New ComboBox
0071.    Dim iDep2 As New ComboBox
0072.    Dim iType As New ComboBox
0073.    Dim iMale As New RadioButton
0074.    Dim iFemale As New RadioButton
0075.    ' Dim iSearchPeople As Boolean = False
0076.    Dim iSubjectDetail As Boolean = False
0077.    '  Dim iFrmSearchPeople As frmSearchPeople
0078.    Dim iFrmSubjectDetail As frmSubjectDetail
0079.    Dim isFind2 As Boolean = False
0080.    Dim da As SqlDataAdapter
0081.    Dim ds As New DataSet
0082.    Dim dt As New DataTable
0083. 
0084. 
0085.    Public Sub New(ByRef refToolStripLabel As ToolStripLabel)
0086.        InitializeComponent()
0087.        _ToolStripLabel = refToolStripLabel
0088.    End Sub
0089.    Public Sub New(ByRef _SubjectDetail As Boolean, ByRef _Male As RadioButton, ByRef _Female As RadioButton, ByRef _CustomerID As TextBox, ByRef _FnameT As TextBox, ByRef _FnameE As TextBox, ByRef _LnameT As TextBox, ByRef _LnameE As TextBox, ByRef _Sname As TextBox, ByRef _mobile As TextBox, ByRef _tel As TextBox, ByRef _position As TextBox, ByRef _Remark As TextBox, ByRef _toStudy As TextBox, ByRef _toWork As TextBox, ByRef _toPortfolio As TextBox, ByRef _emailP1 As TextBox, ByRef _emailP2 As TextBox, ByRef _emailU1 As TextBox, ByRef _emailU2 As TextBox, ByRef _PreT As ComboBox, ByRef _Type As ComboBox, ByRef _PreE As ComboBox, ByRef _Dep1 As ComboBox, ByRef _Dep2 As ComboBox, ByRef _Dep4 As ComboBox, ByRef _Campus As ComboBox, ByRef value As frmSubjectDetail)
0090.        InitializeComponent()
0091.        iSubjectDetail = _SubjectDetail
0092.        iFrmSubjectDetail = value
0093.        iCustomerID = _CustomerID
0094.        iFnameT = _FnameT
0095.        iFnameE = _FnameE
0096.        iLnameT = _LnameT
0097.        iLnameE = _LnameE
0098.        iSname = _Sname
0099.        imobile = _mobile
0100.        itel = _tel
0101.        iemailU1 = _emailU1
0102.        iemailU2 = _emailU2
0103.        iemailP1 = _emailP1
0104.        iemailP2 = _emailP2
0105.        iPreT = _PreT
0106.        iPreE = _PreE
0107.        iDep1 = _Dep1
0108.        iDep2 = _Dep2
0109.        iType = _Type
0110.        iMale = _Male
0111.        iFemale = _Female
0112.        iposition = _position
0113.        iCampus = _Campus
0114.        iRemark = _Remark
0115.        itoStudy = _toStudy
0116.        itoWork = _toWork
0117.        itoPortfolio = _toPortfolio
0118.    End Sub
0119.    Private Sub txtCustomerID_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtCustomerID.TextChanged
0120.        iCustomerID.Text = lblPeopleID.Text()
0121.    End Sub
0122.    Private Sub cboPreT_SelectedValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboPreT.SelectedValueChanged
0123. 
0124.        iPreT.SelectedValue = cboPreT.SelectedValue
0125.    End Sub
0126. 
0127.    Private Sub cboPreE_SelectedValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboPreE.SelectedValueChanged
0128.        iPreE.SelectedValue = cboPreE.SelectedValue
0129.    End Sub
0130. 
0131.    Private Sub cboDep1_SelectedValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboDep1.SelectedValueChanged
0132.        Dim strConn As String
0133.        strConn = DBConnString.strConn
0134.        Conn = New SqlConnection()
0135. 
0136.        With Conn
0137.            If .State = ConnectionState.Open Then .Close()
0138.            .ConnectionString = strConn
0139.            .Open()
0140.        End With
0141. 
0142.        sb = New StringBuilder()
0143.        sb.Append("SELECT * FROM tbl_dep1")
0144.        sb.Append("WHERE dep1ID ='" & cboDep2.SelectedValue.ToString & "'")
0145. 
0146.        Dim sqlIni As String
0147.        sqlIni = sb.ToString()
0148. 
0149.        Dim sqlSelect As String = ""
0150. 
0151.        If isFind2 = True Then
0152.            ds.Tables("tbl_dep1").Clear()
0153.        End If
0154. 
0155.        da = New SqlDataAdapter(sqlSelect, Conn)
0156.        da.Fill(ds, "tbl_dep1")
0157.        With cboCampus
0158.            .DataSource = ds.Tables("tbl_dep1")
0159.            .DisplayMember = "dep1Name"
0160.            .ValueMember = "dep1ID"
0161.        End With
0162.        isFind2 = True
0163.        iDep1.SelectedValue = cboDep1.SelectedValue
0164.    End Sub
0165. 
0166.    Private Sub cboDep2_SelectedValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboDep2.SelectedValueChanged
0167.        iDep2.SelectedValue = cboDep2.SelectedValue
0168.    End Sub
0169.    Private Sub cboType_SelectedValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
0170.        iType.SelectedValue = cboType.SelectedValue
0171.    End Sub
0172. 
0173.    Private Sub txtFnameT_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFnameT.TextChanged
0174.        iFnameT.Text = txtFnameT.Text
0175.    End Sub
0176. 
0177.    Private Sub txtLnameT_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtLnameT.TextChanged
0178.        iLnameT.Text = txtLnameT.Text
0179.    End Sub
0180. 
0181.    Private Sub txtFnameE_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFnameE.TextChanged
0182.        iFnameE.Text = txtFnameE.Text
0183.    End Sub
0184. 
0185.    Private Sub txtLnameE_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtLnameE.TextChanged
0186.        iLnameE.Text = txtLnameE.Text
0187.    End Sub
0188. 
0189.    Private Sub txtSname_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSname.TextChanged
0190.        iSname.Text = txtSname.Text
0191.    End Sub
0192. 
0193.    Private Sub txtemailU1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtemailU1.TextChanged
0194.        iemailU1.Text = txtemailU1.Text
0195.    End Sub
0196. 
0197.    Private Sub txtemailU2_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtemailU2.TextChanged
0198.        iemailU2.Text = txtemailU2.Text
0199.    End Sub
0200. 
0201.    Private Sub txtemailP1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtemailP1.TextChanged
0202.        iemailP1.Text = txtemailP1.Text
0203.    End Sub
0204. 
0205.    Private Sub txtemailP2_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtemailP2.TextChanged
0206.        iemailP2.Text = txtemailP2.Text
0207.    End Sub
0208. 
0209.    Private Sub optMale_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles optMale.CheckedChanged
0210.        iMale.Checked = optMale.Checked
0211.    End Sub
0212. 
0213.    Private Sub optFemale_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles optFemale.CheckedChanged
0214.        iFemale.Checked = optFemale.Checked
0215.    End Sub
0216. 
0217.    Private Sub frmPeople_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
0218.        lblPeopleID.BackColor = Color.FromArgb(0, 0, 0, 0)
0219. 
0220.        Dim FD As New FormFader
0221.        FD.FadeIn(Me, 0.25)
0222. 
0223.        sw.Reset()
0224.        sw.Start()
0225.        Dim strConn As String
0226.        strConn = DBConnString.strConn
0227. 
0228.        Conn = New SqlConnection()
0229.        With Conn
0230.            If .State = ConnectionState.Open Then .Close()
0231.            .ConnectionString = strConn
0232.            .Open()
0233.        End With
0234. 
0235.        sb = New StringBuilder()
0236.        sb.Append("SELECT * FROM tbl_preT;")
0237.        sb.Append("SELECT * FROM tbl_preE;")
0238.        sb.Append("SELECT * FROM tbl_type;")
0239.        sb.Append("SELECT * FROM tbl_campus;")
0240.        sb.Append("SELECT * FROM tbl_dep1 ORDER BY dep1Name;")
0241.        sb.Append("SELECT * FROM tbl_dep2 ORDER BY dep2Name;")
0242. 
0243.        Dim sqlIni As String
0244.        sqlIni = sb.ToString()
0245. 
0246.        RemoveHandler cboPreT.SelectedValueChanged, AddressOf cboPreT_SelectedValueChanged
0247.        RemoveHandler cboPreE.SelectedValueChanged, AddressOf cboPreE_SelectedValueChanged
0248.        RemoveHandler cboCampus.SelectedValueChanged, AddressOf cboCampus_SelectedValueChanged
0249.        RemoveHandler cboDep1.SelectedValueChanged, AddressOf cboDep1_SelectedValueChanged
0250.        RemoveHandler cboDep2.SelectedValueChanged, AddressOf cboDep2_SelectedValueChanged
0251.        RemoveHandler cboType.SelectedValueChanged, AddressOf cboType_SelectedValueChanged
0252. 
0253.        com = New SqlCommand()
0254.        With com
0255.            .CommandText = sqlIni
0256.            .CommandType = CommandType.Text
0257.            .Connection = Conn
0258. 
0259.            dr = .ExecuteReader()
0260.            If dr.HasRows Then
0261. 
0262.                dtPreT = New DataTable
0263.                dtPreT.Load(dr)
0264.                With cboPreT
0265.                    .BeginUpdate()
0266.                    .DisplayMember = "preTNameS"
0267.                    .ValueMember = "preTID"
0268.                    .DataSource = dtPreT
0269.                    .EndUpdate()
0270.                End With
0271. 
0272.                dtPreE = New DataTable
0273.                dtPreE.Load(dr)
0274.                With cboPreE
0275.                    .BeginUpdate()
0276.                    .DisplayMember = "preENameS"
0277.                    .ValueMember = "preEID"
0278.                    .DataSource = dtPreE
0279.                    .EndUpdate()
0280.                End With
0281. 
0282.                dtType = New DataTable
0283.                dtType.Load(dr)
0284.                With cboType
0285.                    .BeginUpdate()
0286.                    .DisplayMember = "typeName"
0287.                    .ValueMember = "typeID"
0288.                    .DataSource = dtType
0289.                    .EndUpdate()
0290.                End With
0291. 
0292.                dtCampus = New DataTable
0293.                dtCampus.Load(dr)
0294.                With cboCampus
0295.                    .BeginUpdate()
0296.                    .DisplayMember = "CampusNameS"
0297.                    .ValueMember = "campusID"
0298.                    .DataSource = dtCampus
0299.                    .EndUpdate()
0300.                End With
0301. 
0302.                dtDep1 = New DataTable
0303.                dtDep1.Load(dr)
0304.                With cboDep1
0305.                    .BeginUpdate()
0306.                    .DisplayMember = "dep1Name"
0307.                    .ValueMember = "dep1ID"
0308.                    .DataSource = dtDep1
0309.                    .EndUpdate()
0310.                End With
0311. 
0312.                 
0313. 
0314.                dtDep2 = New DataTable
0315.                dtDep2.Load(dr)
0316.                da = New SqlDataAdapter(sqlIni, Conn)
0317.                da.Fill(ds, "tbl_dep1")
0318.                With cboDep2
0319.                    .BeginUpdate()
0320.                    .DisplayMember = "dep2Name"
0321.                    .ValueMember = "dep2ID"
0322.                    .DataSource = dtDep2
0323.                    '.DataSource = ds.Tables("tbl_dep1")
0324.                    .EndUpdate()
0325.                End With
0326. 
0327.            End If
0328. 
0329.        End With
0330.        dr.Close()
0331. 
0332.        AddHandler cboPreT.SelectedValueChanged, AddressOf cboPreT_SelectedValueChanged
0333.        AddHandler cboPreE.SelectedValueChanged, AddressOf cboPreE_SelectedValueChanged
0334.        AddHandler cboCampus.SelectedValueChanged, AddressOf cboCampus_SelectedValueChanged
0335.        AddHandler cboDep1.SelectedValueChanged, AddressOf cboDep1_SelectedValueChanged
0336.        AddHandler cboDep2.SelectedValueChanged, AddressOf cboDep2_SelectedValueChanged
0337.        AddHandler cboType.SelectedValueChanged, AddressOf cboType_SelectedValueChanged
0338. 
0339.        iPreT.SelectedValue = cboPreT.SelectedValue
0340.        iPreE.SelectedValue = cboPreE.SelectedValue
0341.        iCampus.SelectedValue = cboCampus.SelectedValue
0342.        iDep1.SelectedValue = cboDep1.SelectedValue
0343.        iDep2.SelectedValue = cboDep2.SelectedValue
0344.        iType.SelectedValue = cboType.SelectedValue
0345. 
0346.        With cboSearch
0347.            .Items.Add("รหัสบุคคล")
0348.            .Items.Add("ชื่อบุคคล(ภาษาไทย)")
0349.            .Items.Add("ชื่อบุคคล(ภาษาอังกฤษ)")
0350.            '  .Items.Add("คณะ")
0351.            '  .Items.Add("ภาควิชา")
0352.            .Items.Add("เบอร์โทรศัพท์มือถือ")
0353.            .SelectedIndex = 1
0354.        End With
0355. 
0356.        cboPreT.ContextMenu = New ContextMenu()
0357.        cboPreE.ContextMenu = New ContextMenu()
0358.        cboCampus.ContextMenu = New ContextMenu()
0359.        cboDep1.ContextMenu = New ContextMenu()
0360.        cboDep2.ContextMenu = New ContextMenu()
0361.        cboType.ContextMenu = New ContextMenu()
0362. 
0363.        picPeople.Image = picPeople.ErrorImage
0364.        ' dtpAdmitDate.Value = DateTime.Today()
0365.        ClearCustomer()
0366. 
0367.        tsAdd.Enabled = True
0368.        tsOK.Enabled = False
0369.        '  tsCancel.Enabled = False
0370. 
0371.        sw.Stop()
0372.        ProcessTime = sw.ElapsedMilliseconds / 1000
0373.        _ToolStripLabel.Text = "เวลาที่ใช้ : " & ProcessTime.ToString("0.0000") & "วินาที"
0374.        If (iSubjectDetail = False) Then
0375.            bgwPeople.RunWorkerAsync()
0376.        End If
0377.    End Sub
0378.    Private Sub ClearCustomer()
0379.        lblPeopleID.Text = ""
0380.        txtCustomerID.Text = ""
0381.        txtFnameT.Text = ""
0382.        txtFnameE.Text = ""
0383.        txtLnameT.Text = ""
0384.        txtLnameE.Text = ""
0385.        txtSname.Text = ""
0386.        txtposition.Text = ""
0387.        txttoStudy.Text = ""
0388.        txttoWork.Text = ""
0389.        txttoPortfolio.Text = ""
0390.        optMale.Checked = True
0391.        txttel.Text = ""
0392.        txtRemark.Text = ""
0393.        txtmobile.Text = ""
0394.        txtemailP1.Text = ""
0395.        txtemailP2.Text = ""
0396.        txtemailU1.Text = ""
0397.        txtemailU2.Text = ""
0398. 
0399.        'dtpAdmitDate.Value = DateTime.Today()
0400.        peoplePicture = ""
0401.        picPeople.Image = picPeople.ErrorImage
0402.        CurrentImage = Nothing
0403.    End Sub
0404. 
0405.    Private Sub bgwPeople_DoWork(ByVal sender As System.Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles bgwPeople.DoWork
0406.        Dim comCount As SqlCommand
0407.        comCount = New SqlCommand()
0408.        With comCount
0409.            .CommandType = CommandType.Text
0410.            .Connection = Conn
0411.        End With
0412. 
0413.        sb.Remove(0, sb.Length())
0414.        sb.Append("SELECT typeID,COUNT(peopleID) AS NumberPeople")
0415.        sb.Append(" FROM tbl_people")
0416.        sb.Append(" GROUP BY typeID")
0417.        sb.Append(" ORDER BY typeID")
0418.        Dim sqlPeople As String
0419.        sqlPeople = sb.ToString()
0420. 
0421.        AllPeople = 0  'สมาชิกทั้งหมด                         AllCustomer
0422.        TeacherPeople = 0 'อาจารย์                            NormalCustomer
0423.        StaffPeople = 0 'บุคลากร                               MemberCustomer
0424.        OtherPeople = 0  'บุคคลภายนอก / วิทยากร     VIPCustomer
0425. 
0426.        Dim drCount As SqlDataReader
0427.        With comCount
0428.            .CommandText = sqlPeople
0429.            drCount = .ExecuteReader()
0430. 
0431.            With drCount
0432.                If .HasRows Then
0433.                    Do While .Read()
0434.                        If .GetString(0) = "0000" Then
0435.                            TeacherPeople = .GetInt32(1)
0436.                        End If
0437.                        If .GetString(0) = "0001" Then
0438.                            StaffPeople = .GetInt32(1)
0439.                        End If
0440.                        If .GetString(0) = "0002" Then
0441.                            OtherPeople = .GetInt32(1)
0442.                        End If
0443.                    Loop
0444.                Else
0445.                    AllPeople = 0  'สมาชิกทั้งหมด                         AllCustomer
0446.                    TeacherPeople = 0 'อาจารย์                            NormalCustomer
0447.                    StaffPeople = 0 'บุคลากร                               MemberCustomer
0448.                    OtherPeople = 0  'บุคคลภายนอก / วิทยากร     VIPCustomer
0449.                End If
0450.            End With
0451.        End With
0452. 
0453.        AllPeople = TeacherPeople + StaffPeople + OtherPeople
0454.        bgwPeople.ReportProgress(100)
0455.        drCount.Close()
0456.    End Sub
0457.    Private Sub bgwPeople_ProgressChanged(ByVal sender As System.Object, ByVal e As System.ComponentModel.ProgressChangedEventArgs) Handles bgwPeople.ProgressChanged
0458.        tsPgbProcess.Value = e.ProgressPercentage()
0459.    End Sub
0460.    Private Sub bgwPeople_RunWorkerCompleted(ByVal sender As System.Object, ByVal e As System.ComponentModel.RunWorkerCompletedEventArgs) Handles bgwPeople.RunWorkerCompleted
0461.        If e.Error Is Nothing Then
0462.            tsAllPeople.Text = "บุคคลทั้งหมด : " & AllPeople.ToString("#,##0") & "คน  (คณาจารย์มจธ. : " & TeacherPeople.ToString("#,##0") & ") " & "(บุคลากรภายใน : " & StaffPeople.ToString("#,##0") & ") " & "(บุคคลภายนอก/วิทยากร : " & OtherPeople.ToString("#,##0") & ") "
0463.        Else
0464.            tsAllPeople.Text = "บุคคลทั้งหมด 0 คน(ปกติ : 0 คน) (คณาจารย์มจธ. : 0 คน) (บุคคลภายนอก/วิทยากร : 0 คน)"
0465.        End If
0466.    End Sub
0467. 
0468. 
0469.    Private Sub tsSearch_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles tsSearch.KeyDown
0470.        If e.KeyCode = Keys.Enter Then
0471.            If tsSearch.Text.Trim() = "" Then Exit Sub
0472. 
0473.            sw.Reset()
0474.            sw.Start()
0475.            sb.Remove(0, sb.Length())
0476.            sb.Append("SELECT * FROM tbl_people")
0477. 
0478.            Select Case cboSearch.SelectedIndex
0479.                Case 0
0480.                    sb.Append(" WHERE (peopleID=@peopleID)")
0481.                Case 1
0482.                    sb.Append(" WHERE (FnameT LIKE @FnameT)")
0483.                Case 2
0484.                    sb.Append(" WHERE (FnameE LIKE @FnameE)")
0485.                Case 3
0486.                    sb.Append(" WHERE (mobile LIKE @mobile)")
0487. 
0488.            End Select
0489. 
0490.            sb.Append("ORDER BY FnameT")
0491.            Dim sqlSearch As String
0492.            sqlSearch = sb.ToString()
0493. 
0494.            dtPeople = New DataTable()
0495.            With com
0496.                .Parameters.Clear()
0497.                Select Case cboSearch.SelectedIndex
0498.                    Case 0
0499.                        .Parameters.Add("@peopleID", SqlDbType.NVarChar).Value = tsSearch.Text.Trim()
0500.                    Case 1
0501.                        .Parameters.Add("@FnameT", SqlDbType.NVarChar).Value = "%" & tsSearch.Text.Trim() & "%"
0502.                    Case 2
0503.                        .Parameters.Add("@FnameE", SqlDbType.NVarChar).Value = "%" & tsSearch.Text.Trim() & "%"
0504.                    Case 3
0505.                        .Parameters.Add("@mobile", SqlDbType.NVarChar).Value = "%" & tsSearch.Text.Trim() & "%"
0506. 
0507.                End Select
0508.                .CommandText = sqlSearch
0509.                .CommandType = CommandType.Text
0510.                .Connection = Conn
0511.                dr = .ExecuteReader
0512. 
0513.                If dr.HasRows Then
0514.                    ClearBinding()
0515.                    ActionFlag = "EDIT"
0516. 
0517.                    dtPeople.Load(dr)
0518.                    bs.DataSource = dtPeople
0519.                    bn.BindingSource = bs
0520.                    lblPeopleID.DataBindings.Add("Text", bs, "peopleID")
0521.                    txtCustomerID.DataBindings.Add("Text", bs, "peopleID")
0522. 
0523.                    ShowPosition()
0524.                    With cboPreT
0525.                        .DisplayMember = "preTNameS"
0526.                        .ValueMember = "preTID"
0527.                        .DataBindings.Add("SelectedValue", bs, "preTID")
0528.                        .DataSource = dtPreT
0529.                    End With
0530.                    With cboPreE
0531.                        .DisplayMember = "preENameS"
0532.                        .ValueMember = "preEID"
0533.                        .DataBindings.Add("SelectedValue", bs, "preEID")
0534.                        .DataSource = dtPreE
0535.                    End With
0536.                    With cboDep1
0537.                        .DisplayMember = "dep1Name"
0538.                        .ValueMember = "dep1ID"
0539.                        .DataBindings.Add("SelectedValue", bs, "dep1ID")
0540.                        .DataSource = dtDep1
0541.                    End With
0542.                    With cboDep2
0543.                        .DisplayMember = "dep2Name"
0544.                        .ValueMember = "dep2ID"
0545.                        .DataBindings.Add("SelectedValue", bs, "dep2ID")
0546.                        .DataSource = dtDep2
0547.                    End With
0548.                    With cboType
0549.                        .DisplayMember = "typeName"
0550.                        .ValueMember = "typeID"
0551.                        .DataBindings.Add("SelectedValue", bs, "typeID")
0552.                        .DataSource = dtType
0553.                    End With
0554.                    With cboCampus
0555.                        .DisplayMember = "campusNameS"
0556.                        .ValueMember = "campusID"
0557.                        .DataBindings.Add("SelectedValue", bs, "campusID")
0558.                        .DataSource = dtCampus
0559.                    End With
0560. 
0561.                    txtFnameT.DataBindings.Add("Text", bs, "FnameT")
0562.                    txtFnameE.DataBindings.Add("Text", bs, "FnameE")
0563.                    txtLnameT.DataBindings.Add("Text", bs, "LnameT")
0564.                    txtLnameE.DataBindings.Add("Text", bs, "LnameE")
0565.                    txtSname.DataBindings.Add("Text", bs, "Sname")
0566.                    txttel.DataBindings.Add("Text", bs, "tel")
0567.                    txtRemark.DataBindings.Add("Text", bs, "Remark")
0568.                    txtmobile.DataBindings.Add("Text", bs, "mobile")
0569.                    txtemailP1.DataBindings.Add("Text", bs, "emailP1")
0570.                    txtemailP2.DataBindings.Add("Text", bs, "emailP2")
0571.                    txtemailU1.DataBindings.Add("Text", bs, "emailU1")
0572.                    txtemailU2.DataBindings.Add("Text", bs, "emailU2")
0573.                    txtposition.DataBindings.Add("Text", bs, "position")
0574.                    txttoStudy.DataBindings.Add("Text", bs, "toStudy")
0575.                    txttoWork.DataBindings.Add("Text", bs, "toWork")
0576.                    txttoPortfolio.DataBindings.Add("Text", bs, "toPortfolio")
0577. 
0578.                    picPeople.DataBindings.Add("Image", bs, "peoplePicture", True, DataSourceUpdateMode.Never, picPeople.ErrorImage)
0579. 
0580.                    bn.Enabled = True
0581.                    tsAdd.Enabled = True
0582.                    tsOK.Enabled = True
0583.                    'tsCancel.Enabled = True
0584.                Else
0585.                    ClearCustomer()
0586.                    tsAdd.Enabled = True
0587.                    tsOK.Enabled = False
0588.                    ' tsCancel.Enabled = False
0589. 
0590.                    bn.BindingSource = Nothing
0591.                    bn.Enabled = False
0592.                    bnRecord.Text = "0"
0593.                    bnCount.Text = "0"
0594. 
0595.                    MessageBox.Show("เงื่อนไขที่คุณป้อน ไม่มี", "ผลการค้นหา", MessageBoxButtons.OK, MessageBoxIcon.Information)
0596.                    tsSearch.Focus()
0597.                    tsSearch.SelectAll()
0598.                End If
0599.            End With
0600. 
0601.            sw.Stop()
0602.            ProcessTime = sw.ElapsedMilliseconds / 1000
0603.            _ToolStripLabel.Text = "เวลาที่ใช้ : " & ProcessTime.ToString("0.0000") & "วินาที"
0604. 
0605.            dr.Close()
0606.        End If
0607.    End Sub
0608.    Private Sub ClearBinding()
0609.        lblPeopleID.DataBindings.Clear()
0610.        txtCustomerID.DataBindings.Clear()
0611.        cboPreT.DataBindings.Clear()
0612.        cboPreE.DataBindings.Clear()
0613.        txtFnameT.DataBindings.Clear()
0614.        txtFnameE.DataBindings.Clear()
0615.        txtLnameT.DataBindings.Clear()
0616.        txtLnameE.DataBindings.Clear()
0617.        txtSname.DataBindings.Clear()
0618.        cboType.DataBindings.Clear()
0619.        cboCampus.DataBindings.Clear()
0620.        cboDep1.DataBindings.Clear()
0621.        cboDep2.DataBindings.Clear()
0622.        txtposition.DataBindings.Clear()
0623.        txttel.DataBindings.Clear()
0624.        txtmobile.DataBindings.Clear()
0625.        txtRemark.DataBindings.Clear()
0626.        txtemailU1.DataBindings.Clear()
0627.        txtemailU2.DataBindings.Clear()
0628.        txtemailP1.DataBindings.Clear()
0629.        txtemailP2.DataBindings.Clear()
0630.        txttoStudy.DataBindings.Clear()
0631.        txttoWork.DataBindings.Clear()
0632.        txttoPortfolio.DataBindings.Clear()
0633.        picPeople.DataBindings.Clear()
0634.    End Sub
0635. 
0636.    Private Sub bnMoveFirst_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bnMoveFirst.Click
0637.        ShowPosition()
0638.    End Sub
0639. 
0640.    Private Sub bnMovePrevious_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bnMovePrevious.Click
0641.        ShowPosition()
0642.    End Sub
0643. 
0644.    Private Sub bnMoveNext_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bnMoveNext.Click
0645.        ShowPosition()
0646.    End Sub
0647. 
0648.    Private Sub bnMoveLast_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bnMoveLast.Click
0649.        ShowPosition()
0650.    End Sub
0651.    Private Sub ShowPosition()
0652.        Dim CurrentRecord As Integer
0653.        If bs.Count > 0 Then
0654.            CurrentRecord = bs.Position + 1
0655.            bnRecord.Text = CStr(CurrentRecord)
0656.            If CStr(dtPeople.Rows(CurrentRecord - 1).Item("Sex")) = "M" Then
0657.                optMale.Checked = True
0658.            ElseIf CStr(dtPeople.Rows(CurrentRecord - 1).Item("Sex")) = "F" Then
0659.                optFemale.Checked = True
0660.            End If
0661.        Else
0662.            CurrentRecord = 0
0663.            bnRecord.Text = "0"
0664.            bnCount.Text = "0"
0665.        End If
0666.    End Sub
0667. 
0668.    Private Sub picPeople_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles picPeople.Click
0669.        With ofDlg
0670.            .Title = "เลือกไฟล์รูปภาพ"
0671.            .Filter = "Bitmap (*.bmp)|*.bmp"
0672.            .FileName = ""
0673.            .Multiselect = False
0674.            .FilterIndex = 0
0675.            If .ShowDialog() = Windows.Forms.DialogResult.OK Then
0676.                peoplePicture = .FileName
0677.                picPeople.Image = Image.FromFile(peoplePicture)
0678.            Else
0679.                peoplePicture = ""
0680.                picPeople.Image = picPeople.ErrorImage
0681.            End If
0682.        End With
0683.    End Sub
0684. 
0685.    Private Sub cmdDeleteImage_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdDeleteImage.Click
0686.        peoplePicture = ""
0687.        picPeople.Image = picPeople.ErrorImage
0688.    End Sub
0689. 
0690.    Private Sub tsAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tsAdd.Click
0691.        ActionFlag = "ADD"
0692.        ClearCustomer()
0693. 
0694.        tsAdd.Enabled = False
0695.        tsOK.Enabled = True
0696.        '  tsCancel.Enabled = True
0697. 
0698.        bn.Enabled = False
0699.        bnRecord.Text = "0"
0700.        bnCount.Text = "0"
0701.        tsSearch.Enabled = False
0702. 
0703.        txtFnameT.Focus()
0704. 
0705.    End Sub
0706. 
0707.    Private Sub tsOK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tsOK.Click
0708.        If (txtFnameT.Text.Trim() = "") OrElse (txtFnameE.Text.Trim() = "") Then
0709.            MessageBox.Show("กรุณาป้อนข้อมูลให้ครบ", "ผลการตรวจสอบ", MessageBoxButtons.OK, MessageBoxIcon.Warning)
0710.            txtFnameT.Focus()
0711.            Exit Sub
0712.        End If
0713.        If MessageBox.Show("คุณต้องการบันทึกข้อมูลใหม่ ใช่หรือไม่", "คำยืนยัน", MessageBoxButtons.YesNo, MessageBoxIcon.Question) = Windows.Forms.DialogResult.Yes Then
0714.            sw.Reset()
0715.            sw.Start()
0716.            tr = Conn.BeginTransaction()
0717. 
0718.            If peoplePicture <> "" Then
0719.                fs = New FileStream(peoplePicture, FileMode.Open, FileAccess.Read)
0720.                ReDim CurrentImage(CInt(fs.Length))
0721.                fs.Read(CurrentImage, 0, CInt(fs.Length - 1))
0722.                fs.Close()
0723.            End If
0724. 
0725.            Dim sqlOK As String
0726.            Dim NewID As String
0727.            Dim FirstID As String
0728.            Dim LastID As Long
0729.            Try
0730.                Select Case ActionFlag
0731.                    Case "ADD"
0732.                        sb.Remove(0, sb.Length())
0733.                        sb.Append("SELECT TOP 1 peopleID FROM tbl_people")
0734.                        sb.Append(" WHERE (typeID=@typeID)")
0735.                        sb.Append(" ORDER BY peopleID DESC")
0736.                        sqlOK = sb.ToString()
0737. 
0738.                        With com
0739.                            .Parameters.Clear()
0740.                            .Parameters.Add("@typeID", SqlDbType.NVarChar).Value = cboType.SelectedValue.ToString()
0741.                            .CommandText = sqlOK
0742.                            .Transaction = tr
0743.                            dr = .ExecuteReader()
0744.                            If dr.HasRows Then
0745.                                With dr
0746.                                    .Read()
0747.                                    NewID = .GetString(.GetOrdinal("peopleID"))
0748.                                End With
0749. 
0750.                                FirstID = StringExt.StringFromLeft(NewID, 4)
0751.                                LastID = CLng(StringExt.StringFromRight(NewID, 6))
0752.                                LastID += 1
0753. 
0754. 
0755.                                lblPeopleID.Text = String.Format(FirstID, "0000") & LastID.ToString("000000")
0756.                                txtCustomerID.Text = lblPeopleID.Text
0757.                            Else
0758.                                lblPeopleID.Text = CStr(cboType.SelectedValue) & "003400"
0759.                                txtCustomerID.Text = lblPeopleID.Text
0760.                            End If
0761.                            dr.Close()
0762.                            sb.Remove(0, sb.Length())
0763.                            sb.Append("INSERT INTO tbl_people (peopleID,FnameT,LnameT,preTID,preEID,")
0764.                            sb.Append(" FnameE,LnameE,Sname,Sex,dep1ID,dep2ID,CampusID,tel,position,mobile,Remark,toStudy,toWork,toPortfolio,emailU1,emailU2,emailP1,emailP2,")
0765. 
0766. 
0767.                            If peoplePicture <> "" Then
0768.                                sb.Append("peoplePicture,")
0769.                            End If
0770.                            sb.Append(" typeID)")
0771. 
0772.                            sb.Append(" VALUES (@peopleID,@FnameT,@LnameT,@preTID,@preEID,")
0773.                            sb.Append(" @FnameE,@LnameE,@Sname,@Sex,@dep1ID,@dep2ID,@CampusID,@tel,@position,@mobile,@Remark,@toStudy,@toWork,@toPortfolio,@emailU1,@emailU2,@emailP1,@emailP2,")
0774. 
0775. 
0776.                            If peoplePicture <> "" Then
0777.                                sb.Append(" @peoplePicture,")
0778.                            End If
0779.                            sb.Append(" @typeID)")
0780. 
0781.                            sqlOK = sb.ToString
0782. 
0783.                            .CommandText = sqlOK
0784.                            .Parameters.Clear()
0785.                            .Parameters.Add("@peopleID", SqlDbType.NVarChar).Value = lblPeopleID.Text
0786.                            .Parameters.Add("@preTID", SqlDbType.NVarChar).Value = CStr(cboPreT.SelectedValue)
0787.                            .Parameters.Add("@preEID", SqlDbType.NVarChar).Value = CStr(cboPreE.SelectedValue)
0788.                            .Parameters.Add("@typeID", SqlDbType.NVarChar).Value = CStr(cboType.SelectedValue)
0789.                            .Parameters.Add("@campusID", SqlDbType.NVarChar).Value = CStr(cboCampus.SelectedValue)
0790.                            .Parameters.Add("@dep1ID", SqlDbType.NVarChar).Value = CStr(cboDep1.SelectedValue)
0791.                            .Parameters.Add("@dep2ID", SqlDbType.NVarChar).Value = CStr(cboDep2.SelectedValue)
0792.                            .Parameters.Add("@FnameT", SqlDbType.NVarChar).Value = txtFnameT.Text.Trim()
0793.                            .Parameters.Add("@FnameE", SqlDbType.NVarChar).Value = txtFnameE.Text.Trim()
0794.                            .Parameters.Add("@LnameT", SqlDbType.NVarChar).Value = txtLnameT.Text.Trim()
0795.                            .Parameters.Add("@LnameE", SqlDbType.NVarChar).Value = txtLnameE.Text.Trim()
0796.                            .Parameters.Add("@Sname", SqlDbType.NVarChar).Value = txtSname.Text.Trim()
0797.                            .Parameters.Add("@tel", SqlDbType.NVarChar).Value = txttel.Text.Trim()
0798.                            .Parameters.Add("@Remark", SqlDbType.NVarChar).Value = txtRemark.Text.Trim()
0799.                            .Parameters.Add("@mobile", SqlDbType.NVarChar).Value = txtmobile.Text.Trim()
0800.                            .Parameters.Add("@emailU1", SqlDbType.NVarChar).Value = txtemailU1.Text.Trim()
0801.                            .Parameters.Add("@emailU2", SqlDbType.NVarChar).Value = txtemailU2.Text.Trim()
0802.                            .Parameters.Add("@emailP1", SqlDbType.NVarChar).Value = txtemailP1.Text.Trim()
0803.                            .Parameters.Add("@emailP2", SqlDbType.NVarChar).Value = txtemailP2.Text.Trim()
0804.                            .Parameters.Add("@position", SqlDbType.NVarChar).Value = txtposition.Text.Trim()
0805.                            .Parameters.Add("@toStudy", SqlDbType.NVarChar).Value = txttoStudy.Text.Trim()
0806.                            .Parameters.Add("@toWork", SqlDbType.NVarChar).Value = txttoWork.Text.Trim()
0807.                            .Parameters.Add("@toPortfolio", SqlDbType.NVarChar).Value = txttoPortfolio.Text.Trim()
0808. 
0809.                            If optMale.Checked = True Then
0810.                                .Parameters.Add("@Sex", SqlDbType.NVarChar).Value = "F"
0811.                            Else
0812.                                .Parameters.Add("@Sex", SqlDbType.NVarChar).Value = "M"
0813.                            End If
0814. 
0815.                            If peoplePicture <> "" Then
0816.                                .Parameters.Add("@peoplePicture", SqlDbType.Image).Value = CurrentImage
0817.                            End If
0818. 
0819.                            .ExecuteNonQuery()
0820.                        End With
0821. 
0822.                    Case "EDIT"
0823.                        sb.Remove(0, sb.Length())
0824. 
0825.                        sb.Append("UPDATE tbl_people")
0826.                        sb.Append(" SET preTID=@preTID,")
0827.                        sb.Append(" preEID=@preEID,")
0828.                        sb.Append(" FnameT=@FnameT,")
0829.                        sb.Append(" LnameT=@LnameT,")
0830.                        sb.Append(" FnameE=@FnameE,")
0831.                        sb.Append(" LnameE=@LnameE,")
0832.                        sb.Append(" Sname=@Sname,")
0833.                        sb.Append(" Sex=@Sex,")
0834.                        sb.Append(" typeID=@typeID,")
0835.                        sb.Append(" campusID=@campusID,")
0836.                        sb.Append(" dep1ID=@dep1ID,")
0837.                        sb.Append(" dep2ID=@dep2ID,")
0838.                        sb.Append(" tel=@tel,")
0839.                        sb.Append(" mobile=@mobile,")
0840.                        sb.Append(" emailU1=@emailU1,")
0841.                        sb.Append(" emailU2=@emailU2,")
0842.                        sb.Append(" emailP1=@emailP1,")
0843.                        sb.Append(" emailP2=@emailP2,")
0844.                        sb.Append(" position=@position,")
0845.                        sb.Append(" Remark=@Remark,")
0846.                        sb.Append(" toStudy=@toStudy,")
0847.                        sb.Append(" toWork=@toWork,")
0848.                        sb.Append(" toPortfolio=@toPortfolio")
0849.                        sb.Append(" WHERE (peopleID=@peopleID)")
0850.                        'Dim sqlOK As String
0851.                        sqlOK = sb.ToString
0852. 
0853.                        With com
0854.                            .CommandText = sqlOK
0855.                            .Transaction = tr
0856.                            .Parameters.Clear()
0857.                            '  .Parameters.Add("@peopleID", SqlDbType.NVarChar).Value = lblPeopleID.Text
0858.                            .Parameters.Add("@preTID", SqlDbType.NVarChar).Value = CStr(cboPreT.SelectedValue)
0859.                            .Parameters.Add("@preEID", SqlDbType.NVarChar).Value = CStr(cboPreE.SelectedValue)
0860.                            .Parameters.Add("@typeID", SqlDbType.NVarChar).Value = CStr(cboType.SelectedValue)
0861.                            .Parameters.Add("@dep1ID", SqlDbType.NVarChar).Value = CStr(cboDep1.SelectedValue)
0862.                            .Parameters.Add("@dep2ID", SqlDbType.NVarChar).Value = CStr(cboDep2.SelectedValue)
0863.                            .Parameters.Add("@campusID", SqlDbType.NVarChar).Value = CStr(cboCampus.SelectedValue)
0864.                            .Parameters.Add("@FnameT", SqlDbType.NVarChar).Value = txtFnameT.Text.Trim()
0865.                            .Parameters.Add("@FnameE", SqlDbType.NVarChar).Value = txtFnameE.Text.Trim()
0866.                            .Parameters.Add("@LnameT", SqlDbType.NVarChar).Value = txtLnameT.Text.Trim()
0867.                            .Parameters.Add("@LnameE", SqlDbType.NVarChar).Value = txtLnameE.Text.Trim()
0868.                            .Parameters.Add("@Sname", SqlDbType.NVarChar).Value = txtSname.Text.Trim()
0869.                            .Parameters.Add("@tel", SqlDbType.NVarChar).Value = txttel.Text.Trim()
0870.                            .Parameters.Add("@Remark", SqlDbType.NVarChar).Value = txtRemark.Text.Trim()
0871.                            .Parameters.Add("@mobile", SqlDbType.NVarChar).Value = txtmobile.Text.Trim()
0872.                            .Parameters.Add("@emailU1", SqlDbType.NVarChar).Value = txtemailU1.Text.Trim()
0873.                            .Parameters.Add("@emailU2", SqlDbType.NVarChar).Value = txtemailU2.Text.Trim()
0874.                            .Parameters.Add("@emailP1", SqlDbType.NVarChar).Value = txtemailP1.Text.Trim()
0875.                            .Parameters.Add("@emailP2", SqlDbType.NVarChar).Value = txtemailP2.Text.Trim()
0876.                            .Parameters.Add("@position", SqlDbType.NVarChar).Value = txtposition.Text.Trim()
0877.                            .Parameters.Add("@toStudy", SqlDbType.NVarChar).Value = txttoStudy.Text.Trim()
0878.                            .Parameters.Add("@toWork", SqlDbType.NVarChar).Value = txttoWork.Text.Trim()
0879.                            .Parameters.Add("@toPortfolio", SqlDbType.NVarChar).Value = txttoPortfolio.Text.Trim()
0880. 
0881.                            If optMale.Checked = True Then
0882.                                .Parameters.Add("@Sex", SqlDbType.NVarChar).Value = "F"
0883.                            Else
0884.                                .Parameters.Add("@Sex", SqlDbType.NVarChar).Value = "M"
0885.                            End If
0886. 
0887.                            If (IsPictureChange = True) AndAlso (peoplePicture <> "") Then
0888.                                .Parameters.Add("@peoplePicture", SqlDbType.Image).Value = CurrentImage
0889.                            End If
0890.                            .Parameters.Add("@peopleID", SqlDbType.NVarChar).Value = lblPeopleID.Text
0891.                            .ExecuteNonQuery()
0892.                        End With
0893. 
0894.                End Select
0895. 
0896.                tr.Commit()
0897.                sw.Stop()
0898.                ProcessTime = sw.ElapsedMilliseconds / 1000
0899.                _ToolStripLabel.Text = "เวลาที่ใช้ : " & ProcessTime.ToString("0.0000") & " วินาที"
0900. 
0901.                MessageBox.Show("บันทึกข้อมูลสมาชิกใหม่ เรียบร้อยแล้ว", "ผลการทำงาน", MessageBoxButtons.OK, MessageBoxIcon.Information)
0902. 
0903.                If (iSubjectDetail = False) Then
0904.                    ClearCustomer()
0905.                End If
0906.                If (iSubjectDetail = True) Then
0907.                    Me.Close()
0908.                End If
0909. 
0910.                bn.BindingSource = Nothing
0911.                bnRecord.Text = "0"
0912.                bnCount.Text = "0"
0913. 
0914.                tsAdd.Enabled = True
0915.                tsOK.Enabled = False
0916.                '   tsCancel.Enabled = False
0917.                bn.Enabled = True
0918. 
0919.                tsSearch.Focus()
0920.                tsSearch.SelectAll()
0921. 
0922.                If (iSubjectDetail = False) Then
0923.                    bgwPeople.RunWorkerAsync()
0924.                End If
0925.            Catch ex As Exception
0926.                tr.Rollback()
0927.                MessageBox.Show("เกิดข้อผิดพลาด เนื่องจาก " & ex.Message, "ผลการทำงาน", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
0928.            End Try
0929.            tsSearch.Enabled = True
0930.        End If
0931.    End Sub
0932. 
0933.    Private Sub tsCancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
0934.        tsAdd.Enabled = True
0935.        If ActionFlag = "ADD" Then
0936.            tsOK.Enabled = False
0937.            '  tsCancel.Enabled = False
0938.        Else
0939.            tsOK.Enabled = True
0940.            '  tsCancel.Enabled = True
0941.        End If
0942.        bn.Enabled = False
0943.        tsOK.Enabled = False
0944.        ' tsCancel.Enabled = False
0945. 
0946.        ClearCustomer()
0947.        If (iSubjectDetail = True) Then
0948.            Me.Close()
0949.        End If
0950.        tsSearch.Enabled = True
0951.        tsSearch.Focus()
0952.        tsSearch.SelectAll()
0953.    End Sub
0954.    Private Sub cboPreT_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles cboPreT.KeyPress
0955.        e.Handled = True
0956.    End Sub
0957.    Private Sub cboPreE_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles cboPreE.KeyPress
0958.        e.Handled = True
0959.    End Sub
0960.    Private Sub cboType_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles cboType.KeyPress
0961.        e.Handled = True
0962.    End Sub
0963.    Private Sub cboDep1_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles cboDep1.KeyPress
0964.        e.Handled = True
0965.    End Sub
0966.    Private Sub cboDep2_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles cboDep2.KeyPress
0967.        e.Handled = True
0968.    End Sub
0969.    Private Sub frmPeople_FormClosed(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles MyBase.FormClosed
0970.        If Conn IsNot Nothing Then
0971.            Conn.Close()
0972.        End If
0973.    End Sub
0974. 
0975.    Private Sub tsEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
0976.        If (txtFnameT.Text.Trim() = "") OrElse (txtFnameE.Text.Trim() = "") Then
0977.            MessageBox.Show("กรุณาป้อนข้อมูลให้ครบ", "ผลการตรวจสอบ", MessageBoxButtons.OK, MessageBoxIcon.Warning)
0978.            txtFnameT.Focus()
0979.            Exit Sub
0980.        End If
0981. 
0982.        If MessageBox.Show("คุณต้องการแก้ไขข้อมูลลูกค้า ใช่หรือไม่?", "คำยืนยัน", MessageBoxButtons.YesNo, MessageBoxIcon.Question) = Windows.Forms.DialogResult.Yes Then
0983.            sw.Reset()
0984.            sw.Start()
0985.            tr = Conn.BeginTransaction()
0986. 
0987.            Try
0988.                If (IsPictureChange = True) AndAlso (peoplePicture <> "") Then
0989.                    fs = New FileStream(peoplePicture, FileMode.Open, FileAccess.Read)
0990.                    ReDim CurrentImage(CInt(fs.Length))
0991.                    fs.Read(CurrentImage, 0, CInt(fs.Length - 1))
0992.                    fs.Close()
0993.                Else
0994.                    CurrentImage = New Byte() {}
0995.                End If
0996. 
0997.                sb.Remove(0, sb.Length())
0998. 
0999.                sb.Append("UPDATE tbl_people")
1000.                sb.Append(" SET preTID=@preTID,")
1001.                sb.Append(" preEID=@preEID,")
1002.                sb.Append(" FnameT=@FnameT,")
1003.                sb.Append(" LnameT=@LnameT,")
1004.                sb.Append(" FnameE=@FnameE,")
1005.                sb.Append(" LnameE=@LnameE,")
1006.                sb.Append(" Sname=@Sname,")
1007.                sb.Append(" Sex=@Sex,")
1008.                sb.Append(" typeID=@typeID,")
1009.                sb.Append(" campusID=@campusID,")
1010.                sb.Append(" dep1ID=@dep1ID,")
1011.                sb.Append(" dep2ID=@dep2ID,")
1012.                sb.Append(" tel=@tel,")
1013.                sb.Append(" mobile=@mobile,")
1014.                sb.Append(" emailU1=@emailU1,")
1015.                sb.Append(" emailU2=@emailU2,")
1016.                sb.Append(" emailP1=@emailP1,")
1017.                sb.Append(" emailP2=@emailP2")
1018.                sb.Append(" position=@position,")
1019.                sb.Append(" Remark=@Remark,")
1020.                sb.Append(" toStudy=@toStudy,")
1021.                sb.Append(" toWork=@toWork,")
1022.                sb.Append(" toPortfolio=@toPortfolio,")
1023.                sb.Append(" WHERE (peopleID=@peopleID)")
1024.                Dim sqlOK As String
1025.                sqlOK = sb.ToString
1026. 
1027.                With com
1028.                    .CommandText = sqlOK
1029.                    .Transaction = tr
1030.                    .Parameters.Clear()
1031.                    .Parameters.Add("@peopleID", SqlDbType.NVarChar).Value = lblPeopleID.Text
1032.                    .Parameters.Add("@preTID", SqlDbType.NVarChar).Value = CStr(cboPreT.SelectedValue)
1033.                    .Parameters.Add("@preEID", SqlDbType.NVarChar).Value = CStr(cboPreE.SelectedValue)
1034.                    .Parameters.Add("@typeID", SqlDbType.NVarChar).Value = CStr(cboType.SelectedValue)
1035.                    .Parameters.Add("@dep1ID", SqlDbType.NVarChar).Value = CStr(cboDep1.SelectedValue)
1036.                    .Parameters.Add("@dep2ID", SqlDbType.NVarChar).Value = CStr(cboDep2.SelectedValue)
1037.                    .Parameters.Add("@campusID", SqlDbType.NVarChar).Value = CStr(cboCampus.SelectedValue)
1038.                    .Parameters.Add("@FnameT", SqlDbType.NVarChar).Value = txtFnameT.Text.Trim()
1039.                    .Parameters.Add("@FnameE", SqlDbType.NVarChar).Value = txtFnameE.Text.Trim()
1040.                    .Parameters.Add("@LnameT", SqlDbType.NVarChar).Value = txtLnameT.Text.Trim()
1041.                    .Parameters.Add("@LnameE", SqlDbType.NVarChar).Value = txtLnameE.Text.Trim()
1042.                    .Parameters.Add("@Sname", SqlDbType.NVarChar).Value = txtSname.Text.Trim()
1043.                    .Parameters.Add("@tel", SqlDbType.NVarChar).Value = txttel.Text.Trim()
1044.                    .Parameters.Add("@Remark", SqlDbType.NVarChar).Value = txtRemark.Text.Trim()
1045.                    .Parameters.Add("@mobile", SqlDbType.NVarChar).Value = txtmobile.Text.Trim()
1046.                    .Parameters.Add("@emailU1", SqlDbType.NVarChar).Value = txtemailU1.Text.Trim()
1047.                    .Parameters.Add("@emailU2", SqlDbType.NVarChar).Value = txtemailU2.Text.Trim()
1048.                    .Parameters.Add("@emailP1", SqlDbType.NVarChar).Value = txtemailP1.Text.Trim()
1049.                    .Parameters.Add("@emailP2", SqlDbType.NVarChar).Value = txtemailP2.Text.Trim()
1050.                    .Parameters.Add("@position", SqlDbType.NVarChar).Value = txtposition.Text.Trim()
1051.                    .Parameters.Add("@toStudy", SqlDbType.NVarChar).Value = txttoStudy.Text.Trim()
1052.                    .Parameters.Add("@toWork", SqlDbType.NVarChar).Value = txttoWork.Text.Trim()
1053.                    .Parameters.Add("@toPortfolio", SqlDbType.NVarChar).Value = txttoPortfolio.Text.Trim()
1054. 
1055.                    If optMale.Checked = True Then
1056.                        .Parameters.Add("@Sex", SqlDbType.NVarChar).Value = "F"
1057.                    Else
1058.                        .Parameters.Add("@Sex", SqlDbType.NVarChar).Value = "M"
1059.                    End If
1060. 
1061.                    If (IsPictureChange = True) AndAlso (peoplePicture <> "") Then
1062.                        .Parameters.Add("@peoplePicture", SqlDbType.Image).Value = CurrentImage
1063.                    Else
1064.                        .Parameters.Add("@peoplePicture", SqlDbType.Image).Value = CurrentImage
1065.                    End If
1066.                    .ExecuteNonQuery()
1067.                End With
1068.                tr.Commit()
1069. 
1070.                sw.Stop()
1071.                ProcessTime = sw.ElapsedMilliseconds / 1000
1072.                _ToolStripLabel.Text = "เวลาที่ใช้ : " & ProcessTime.ToString("0.0000") & " วินาที"
1073.                MessageBox.Show("แก้ไขข้อมูลบุคคล เรียบร้อยแล้ว", "ผลการทำงาน", MessageBoxButtons.OK, MessageBoxIcon.Information)
1074. 
1075.                '  tsEdit.Enabled = False
1076.                '  tsCancel.Enabled = False
1077.                bn.Enabled = True
1078.                IsPictureChange = False
1079.                tsSearch.Focus()
1080.                tsSearch.SelectAll()
1081.            Catch ex As Exception
1082.                tr.Rollback()
1083.                MessageBox.Show("เกิดข้อผิดพลาด เนื่องจาก" & ex.Message, "ผลการทำงาน", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
1084.            End Try
1085.        End If
1086.    End Sub
1087. 
1088.    Private Sub cboCampus_SelectedValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboCampus.SelectedValueChanged
1089.        iCampus.SelectedValue = cboCampus.SelectedValue
1090.    End Sub
1091. 
1092.    Private Sub txtposition_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtposition.TextChanged
1093.        iposition.Text = txtposition.Text()
1094.    End Sub
1095. 
1096.    Private Sub txtRemark_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtRemark.TextChanged
1097.        iRemark.Text = txtRemark.Text()
1098.    End Sub
1099. 
1100.    Private Sub txttoStudy_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txttoStudy.TextChanged
1101.        itoStudy.Text = txttoStudy.Text()
1102.    End Sub
1103. 
1104.    Private Sub txttoWork_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txttoWork.TextChanged
1105.        itoWork.Text = txttoWork.Text()
1106.    End Sub
1107. 
1108.    Private Sub txttoPortfolio_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txttoPortfolio.TextChanged
1109.        itoPortfolio.Text = txttoPortfolio.Text()
1110.    End Sub
1111.End Class



ประวัติการแก้ไข
2011-07-26 15:44:17
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-07-26 15:43:07 By : jernnrej
 

 

No. 7



โพสกระทู้ ( 14 )
บทความ ( 0 )



สถานะออฟไลน์


แหะๆ ยาวไปหน่อย (มากกกกกกกกก)
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-07-26 15:44:56 By : jernnrej
 

 

No. 8



โพสกระทู้ ( 437 )
บทความ ( 0 )



สถานะออฟไลน์


ผมดูก็ไม่น่ามีอะไรผิดนะครับ น่าจะมีแค่ตรงนี้

Code (VB.NET)
1.sb.Append("SELECT * FROM tbl_dep1")       
2.sb.Append("WHERE dep1ID ='" & cboDep2.SelectedValue.ToString & "'")


สังเกตุบรรทัดแรกนะครับให้เรา เว้นวรรคด้วยครับ หลังเลขหนึ่งน่ะครับ

ไม่งั้น SQL String ที่ออกมามันจะเป็น

SELECT * FROM tbl_dep1WHERE dep1ID ='" & cboDep2.SelectedValue.ToString & "'

ซึ่งควรจะเป็น

SELECT * FROM tbl_dep1 WHERE dep1ID ='" & cboDep2.SelectedValue.ToString & "'

(วรรคหน้า Where)
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-07-26 17:01:12 By : kaimuk
 

 

No. 9



โพสกระทู้ ( 14 )
บทความ ( 0 )



สถานะออฟไลน์


ว้าว จริงๆด้วยค่ะ เพิ่งเข้าใจแจ่มแจ้งว่าทำไมต้องวรรคหน้า where

คราวนี้ในcombobox 2 ดึงข้อมูลสาขาวิชามาทั้งหมดเลยค่ะ
มันไม่ได้เลือกมาเฉพาะที่ combobox คณะแสดงอยู่
พอลองเลือกครั้งที่ 2 ก็เกิดerror อันนี้ขึ้นมาค่ะ

errorCombobox
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-07-26 17:29:33 By : jernnrej
 

 

No. 10



โพสกระทู้ ( 437 )
บทความ ( 0 )



สถานะออฟไลน์


ดูเหมือนจะเป็นบรรทัดนี้นะครับ

da = New SqlDataAdapter(sqlSelect, Conn)

เพราะ SQLSelect ไม่ได้มีการแทนค่าอะไรลงไปเลย
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-07-27 08:44:11 By : kaimuk
 

 

No. 11



โพสกระทู้ ( 14 )
บทความ ( 0 )



สถานะออฟไลน์


จริงๆด้วยละคะ อ้างผิดตัว
และก็เพิ่งมาสังเกตเห็น ไม่แน่ใจว่าผูกข้อมูลผิดตัวรึเปล่า
ก่อนหน้านี้ผูกกับ cboDep2 (สาขาวิชา) แต่โค้ดนี้เปลี่ยนเป็นผูกกับ cboDep1 (คณะ)
แบบโค้ดนี้ถูกมั้ยค่ะ

Code (VB.NET)
01.dtDep1 = New DataTable
02.                dtDep1.Load(dr)
03.                da = New SqlDataAdapter(sqlIni, Conn)
04.                da.Fill(ds, "tbl_dep1")
05.                With cboDep1
06.                    .BeginUpdate()
07.                    .DisplayMember = "dep1Name"
08.                    .ValueMember = "dep1ID"
09.                    .DataSource = dtDep1
10.                    .EndUpdate()
11.                End With
12. 
13.                 
14. 
15.                dtDep2 = New DataTable
16.                dtDep2.Load(dr)
17.                With cboDep2
18.                    .BeginUpdate()
19.                    .DisplayMember = "dep2Name"
20.                    .ValueMember = "dep2ID"
21.                    .DataSource = dtDep2
22.                    '.DataSource = ds.Tables("tbl_dep1")
23.                    .EndUpdate()
24.                End With


แต่กลายเป็นว่าเกิดerror แบบภาพนี้ค่ะ


และก็อยากถามอีกนิดดดดดนึงค่ะ
ตอนที่ระบุDataSource นี้ เราต้องระบุแบบนี้ .DataSource = dtDep2 หรือแบบนี้ค่ะ .DataSource = ds.Tables("tbl_dep1")

ขอบคุณนะคะที่ช่วยชี้แนะมาโดยตลอดเลย


ประวัติการแก้ไข
2011-07-27 17:24:28
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-07-27 17:20:03 By : jernnrej
 

 

No. 12



โพสกระทู้ ( 14 )
บทความ ( 0 )



สถานะออฟไลน์


error3
ขออภัย เมื่อตะกี้ภาพไม่ขึ้นค่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-07-27 17:25:42 By : jernnrej
 

 

No. 13



โพสกระทู้ ( 74,059 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

มันบอกว่าใช้ DataReader ซ้ำครับ ให้ .Close() ตัวแรกก่อนครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-07-27 21:38:24 By : webmaster
 

 

No. 14

Guest


มันต้อง .close ตัวไหนค่ะ dr.close(); ใช่มั้ยค่ะ
แต่สงสัยว่าต้องใส่ตรงไหนค่ะ

เพราะว่าท้ายการโหลดก็ใส่ dr.close();รวมทุกตัว แต่ไม่รู้ว่าต้องใส่แยกทีละตัวรึเปล่าค่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-07-29 10:44:48 By : jernnrej
 

 

No. 15



โพสกระทู้ ( 14 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 13 เขียนโดย : webmaster เมื่อวันที่ 2011-07-27 21:38:24
รายละเอียดของการตอบ ::
มันฟ้องที่ da.fill นี่ค่ะ แต่ทำไมถึงบอกให้ิปิดdatareader ละคะ
da เป็น dataadapter ไม่ใช่เหรอค่ะ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-08-25 15:32:09 By : jernnrej
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : สอบถามเรื่องการ binding ข้อมูลของ combobox แล้วไม่ผ่านค่ะ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)





ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2025 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่