 |
|
สอบถามปัญหาคำสั่ง vb 2008 เกี่ยวกับ combobox เมื่อเลือกเเล้วให้มันขึ้นตรง textbox ตาม เรคคอร์ดของมันอะครับ โค๊ดต้องเขียนยังไงครับ |
|
 |
|
|
 |
 |
|
ที่บริษัทผมไม่มีโปรแกรมให้เขียน งั้นเอาเป็นเเนวทางละกัน นะครับ
1. สิ่งเเรก ดึงข้อมูลมาใส่ใน Combobox ก่อน ดึงจากตารางออกมา
2. ดับเบอ้ลคลิ๊กที่ Combobox พอเข้าหน้า Code ก็ใส่ว่า
SELECT TAXRATE,LANDAVG FROM ชื่อตาราง WHERE AREANAME = '" & Combobox.TEXT "'
เเล้วเอาไปใส่ใน Textbox ส่วนอันที่เป็น .00 ก็แปลงค่าเอาอะครับ จบเรียบร้อย
|
 |
 |
 |
 |
Date :
2010-12-17 11:50:45 |
By :
EucifeR |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
เเนวผมเขียนออกมาเเบนี้ครับ
Dim sqlareatax As String = ""
sqlareatax = "SELECT * FROM areatax ORDER BY AREAID"
da = New SqlDataAdapter(sqlareatax, Conn)
da.Fill(ds, "areatax")
With cboAREATAX
.DisplayMember = "AREANAME"
.ValueMember = "AREAID"
.DataSource = ds.Tables("areatax")
.DataBindings.Add("SelectedValue", bin, "AREAID")
If cboAREATAX.SelectedIndex = 0 Then
............ตรงนี้ต่อไปไม่ได้
End With
ที่พี่ เเนะนำมา มัน error อยู่
|
 |
 |
 |
 |
Date :
2010-12-17 13:10:53 |
By :
pisansri |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
Dim sqlareatax As String = ""
sqlareatax = "SELECT TAXRATE,LANDAVG FROM ชื่อตาราง WHERE AREANAME = '" & Combobox.TEXT "'
da = New SqlDataAdapter(sqlareatax, Conn)
da.Fill(ds, "areatax")
cboAREATAX.selectvalue = ds.Table("areatax").row(0)(0)
|
 |
 |
 |
 |
Date :
2010-12-17 13:21:35 |
By :
zero1150kfc |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
มี 2 วิธีนะครับ
1. bind กับ Controls TextBox ไปเลย เมื่อ Bind แล้ว ไม่ต้องทำอะไร เมื่อ ComboBox เปลี่ยน Index TextBox ก็เปลี่ยน
Code (VB.NET)
Me.-- ใส่ชื่อ Controls TextBox --.DataBindings.Add("Text", ds.Tables("areatax"), "TAXRATE")
Me.-- ใส่ชื่อ Controls TextBox --.DataBindings.Add("Text", ds.Tables("areatax"), "LANDAVG")
2. ที่ใส่ข้อมูลเองที่ Event SelectedIndexChanged
Code (VB.NET)
Private Sub cboAREATAX_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboAREATAX.SelectedIndexChanged
Me.TAXRATE_textbox.Text = Me.cboAREATAX.SelectedItem("TAXRATE")
Me.LANDAVG_textbox.Text = Me.cboAREATAX.SelectedItem("LANDAVG")
End Sub
|
 |
 |
 |
 |
Date :
2010-12-17 13:32:28 |
By :
base3000 |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|

ได้เเบบนี้ครับ
|
 |
 |
 |
 |
Date :
2010-12-17 14:44:44 |
By :
pisansri |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
เขาบอกว่า มีตารางอื่น binding อยู่ก่อนแล้ว
|
 |
 |
 |
 |
Date :
2010-12-17 15:16:47 |
By :
base3000 |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ต้อง เเก้ยังไงครับ
|
 |
 |
 |
 |
Date :
2010-12-17 17:07:28 |
By :
pisansri |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
เฮ้อ ตอบยากนะน้อง โค๊ดก็เห็นไม่หมด ที่บอกไปก็คิดว่าชัดเจนแล้ว
เอาเป็นว่าน้องไปดูส่วนอื่นว่า มีทำแบบตรงจุดที่ Error กับตารางตัวอื่นไวัหรือเปล่า
|
 |
 |
 |
 |
Date :
2010-12-17 17:56:18 |
By :
base3000 |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
Private Sub cboPid_SelectedValueChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles cboPid.SelectedValueChanged
ConnectDB()
Dim sql As String
sql = "Select * From tblProduct Where Product_ID='" & cboPid.Text & "'"
Cmd = New OleDbCommand(sql, conn) อันนี้คือเลือกตัวไหนจาก combobox
Dr = Cmd.ExecuteReader
Dr.Read()
txtprice.Text = Dr.Item("UnitPrice").ToString <<<พวกนี้คือส่วนที่จะให้มันแสดงเวลาเลือก อันข้างบน
txtTypeProduct.Text = Dr.Item("Type").ToString <<<พวกนี้คือส่วนที่จะให้มันแสดงเวลาเลือก อันข้างบน
txtUnitInstock.Text = Dr.Item("UnitInstock").ToString <<<พวกนี้คือส่วนที่จะให้มันแสดงเวลาเลือก อันข้างบน
txtUnit.Focus()
ShowData()
Dr.Close()
Conn.Close()
End Sub
โค้ดนี้เราเลือกสินค้าแล้วให้แสดง ราคา ประเภท จำนวนในสต้อก
สามารถนำไปใช้กับสิ่งที่คุณต้องการได้ ลองดู
|
 |
 |
 |
 |
Date :
2010-12-20 10:31:38 |
By :
stepxforce |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|