รายละเอียดของการตอบ ::
ที่ถามคือตอน display ครับ
เพราะว่ารูปแบบการ บันทึก(แนวนอน) กับ display(แนวตั้ง) จะต่างกันใช่ไม๊ครับ
ท่าน แอดมิน แนะให้ใช้ list หรือ Diractory<double,list<double>>
ท่าน fonfire แนะให้ใช้ DataTable
นอกจากนี้ยังสามารถ select SQL ออกมาเลย(ก็น่าจะได้)
โดยส่วนตัวผมถนัดแบบ แอดมิน ครับ ยืดหยุ่นได้เยอะดี
ส่วนถ้าอยากทำตาม No. 6 แล้วติดข้อข้องใจตาม No. 7
ถ้าลองทำซักรอบก็จะแก้ได้เองครับ
เพราะพอเรา select มันก็บอกได้ว่า rows เท่าไหร่
เอาใช้หลัก conlumncount ของ datable ที่เราสร้าง = rowcount ที่ select มา
เอา conlumncount ของ datable ไปใช้สร้าง datable
Code
เพิ่ม Row รอ
dt = New DataTable()
dt.Columns.Add(New DataColumn("No", GetType(String)))
dt.Columns.Add(New DataColumn("1", GetType(Double)))
dt.Columns.Add(New DataColumn("2", GetType(Double)))
dt.Columns.Add(New DataColumn("3", GetType(Double)))
..
..
dt.Columns.Add(New DataColumn(conlumncount , GetType(Double)))
dt.Columns.Add(New DataColumn("AVG", GetType(Double)))
จากที่เห็น จำนวน คอลัมเราจะเปลี่ยนไปเรื่อยๆขึ้นอยู่กับ rowcount ที่ select มา นั่นเองครับ
ใช่ประมาณนี้ไม๊ครับที่ต้องการ
ปล.ผมทำงานเป็นนักวิเคราะห์โลหะหนัก เงินเดือนก็น้อยอยู่ ที่ทนเขียนโปรแกรมทั้งๆที่ไม่จบมาด้านนี้เลย ก็เพราะเขียนหนังสือไม่สวย
ไม่สวยแค่ไหนรึ ถ้าท่านมาที่ออฟฟิสผมเมื่อไม่นานมานี้จะได้ยินเสียง ผจก.เปล่งมาว่า ไอ้..... มึงเขียนผลยังไงของมึงอ่านไม่ออก เอาไปคัดมาใหม่ อาทิตย์ละ 5 วัน(ซึ่งเป็นเวลาที่ผมรันเครื่องพอดี 555) บางวันก็มีคำแปลกโผล่มาให้อายเหล่าเพื่อพ้องที่ทำงานด้วยกันเป็นเนืองๆ
จนผมต้องฝืนหัดเขียนโปรแกรม อดตาหลับขับตานอน(ไม่ได้ทำงานหรอก แดกเหล้า ) จนลบคำด่าเหล่านั้นไปในที่สุดนั่นเอง
ถึงทุกวันนี้ผมก็เขียนเขียนแบบไก่เขี่ยไส้เดือนอยู่นั่นเอง(ใครจะไปสนในเมื่อมี Angsana New อยู่แล้วจริงไม๊)