LOADING ...

Visual Basic .Net : Search in Access Database - DataGridView BindingSource Filter Part 1/2

9M+ views   |   2K+ likes   |   364 dislikes   |  
Jul 31, 2014

Thumbs

Visual Basic .Net : Search in Access Database - DataGridView BindingSource Filter Part 1/2
Visual Basic .Net : Search in Access Database - DataGridView BindingSource Filter Part 1/2 thumb Visual Basic .Net : Search in Access Database - DataGridView BindingSource Filter Part 1/2 thumb Visual Basic .Net : Search in Access Database - DataGridView BindingSource Filter Part 1/2 thumb

Transcription

  • สวัสดีครับ
  • อันดับแรก ให้เราเปิดโปรเจคเดิมที่เราสร้างไว้ขึ้นมาก่อนนะครับ (โปรดดูวิดีโอที่ 1 ครับ หรือ ดูคำอธิบายด้านล่างวิดีโอนี้)
  • นี่คือฟอร์มที่เราได้ออกแบบ และ เขียนโค้ดไว้ในวิดีโอที่แล้ว โปรแกรมสามารถ เพิ่ม, แก้ไข, อัพเดท และ ลบข้อมูลได้ครับ
  • ให้เปิดหน้าต่าง Properties ของ Form1 ขึ้นมาครับ
  • ต่อไป ผมจะเปลี่ยนข้อความบน Title Bar ของ Form1 โดยการแก้ไขที่ Text Property ครับ (Form.Text Property)
  • ในขั้นตอนนี้ ให้เปลี่ยนข้อความได้ตามต้องการเลยครับ
  • ต่อไป ผมจะเปลี่ยนไอคอนของฟอร์มที่อยู่ตรงมุมซ้าย บนครับ
  • *** โปรดสังเกตุว่า รูปภาพของไอคอน จะมีนามสกุล .ico ครับ
  • ตอนนี้ รูปภาพไอคอนของ Form1 ได้เปลี่ยนไปแล้ว
  • ต่อไป ผมจะเปลี่ยนรูปแบบขอบของฟอร์ม ให้เปลี่ยนที่ FormBorderStyle Property (สามารถเลือกได้ตามชอบครับ)
  • ให้ซ่อน Properties window ไปก่อน โดยคลิ๊ก Auto Hide
  • แล้วเปิด Toolbox window ขึ้นมาแทน โดยคลิ๊ก Dock ครับ
  • ให้ขยายขนาดของ Form สำหรับการเพิ่มคอนโทรลต่าง ๆ ครับ
  • ผมจะเพิ่ม GroupBox Control เข้ามา 1 ตัวนะครับ
  • จากนั้นให้ปรับขนาดตามต้องการครับ
  • ผมจะเปลี่ยนข้อความบน GroupBox ให้ไปที่ Text Property
  • ตรงนี้ต้องการสื่อว่า ใช้สำหรับปรับสีแถวของ DataGridView
  • ให้เปลี่ยนข้อความตามผมนะครับ
  • ให้คลิ๊กลาก ComboBox Control เข้ามาบน GroupBox ครับ
  • จากนั้น Copy มาอีกตัว ตัวนี้ใช้สำหรับปรับสีของ แถวสลับ ครับ
  • คลิ๊กลาก Label เข้ามาด้วยครับ
  • และ copy มาอีก 1 ตัว สำหรับบอกการทำงานของ ComboBox
  • จัดวางให้สวยงามตามต้องการ
  • จากนั้น ให้เปลี่ยนข้อความของ Label ทั้ง 2 ตัว
  • ตรงนี้ ให้พิมพ์ข้อความตามผมนะครับ
  • ต่อไป ให้เปลี่ยนชื่อของ ComboBox ให้คลิ๊กตัวแรกก่อนครับ
  • จากนั้น ไปที่ Name Property ให้เปลี่ยนชื่อตามผมครับ
  • คลิ๊กเลือก ComboBox ตัวที่ 2 แล้วเปลี่ยนชื่อตามผมครับ
  • ปรับขนาด และ จัดวางตำแหน่งของ Control ได้ตามต้องการ
  • ตรงนี้ สามารถทำตามตัวอย่างในวิดีโอได้เลยครับ
  • จากนั้น ผมจะเพิ่ม Label เข้ามาใน Form อีก 1 ตัวครับ
  • Label ตัวนี้ใช้สำหรับคลิ๊กเพื่อ Reset การปรับแต่งค่าต่างๆ
  • เราควรตั้งชื่อให้สื่อความหมาย สำหรับใช้ในการเขียนโค้ดครับ
  • และ เปลี่ยนข้อความบนตัว Label ด้วย เพื่อให้สื่อความหมาย
  • สามารถปรับแต่งคุณสมบัติต่างๆ เพิ่มเติมได้ เช่น สีพื้นหลัง, สีตัวอักษร, ขนาดตัวอักษร เป็นต้น
  • ตรง Cursor ผมจะปรับเป็น Hand คือ เวลาเราเอาเมาส์ไปวางบน Label นี้ ให้เคอร์เซอร์เมาส์เปลี่ยนเป็นรูปมือครับ
  • ลาก จัดวางตำแหน่งได้ตามต้องการครับ
  • ให้เราซ่อน Properties window ไปก่อน คลิ๊กที่ Auto Hide
  • ขั้นตอนต่อไป ให้เราเพิ่ม Button และ TextBox เข้ามา เพื่อใช้สำหรับฟังก์ชั่นการค้นหาข้อมูลครับ
  • ตรงนี้ให้ทำตามตัวอย่างในวิดีโอได้เลยครับ
  • โปรดทราบว่า ถ้าเราต้องการเขียนโค้ดกับคอนโทรลตัวไหน เราควรเปลี่ยนชื่อของคอนโทรลตัวนั้น ให้สื่อความหมายด้วย
  • ในตัวอย่าง ผมต้องการเขียนโค้ดที่ปุ่มค้นหา ก็ให้เปลี่ยนชื่อปุ่มเป็น btnSearch หรือ ButtonSearch นั่นเอง
  • และอย่าลืม เปลี่ยนข้อความบนปุ่มให้สื่อความหมายด้วยครับ
  • ปรับขนาด และ สี ตัวอักษรได้ตามต้องการ
  • ให้ทำเช่นเดียวกันนี้กับ TextBox ดูตามตัวอย่างได้เลยครับ
  • ให้ซ่อน Toolbox window ไปก่อนครับ
  • ปรับขนาดฟอร์ม และ คอนโทรลต่าง ๆ ให้ดูสวยงามครับ
  • ต่อไปให้ปรับคุณสมบัติของ Access Database คลิ๊กขวาแล้วเลือก Properties ครับ
  • เปลี่ยนตรง Copy to Output Directory จาก Do not copy เป็น Copy if newer ครับ
  • เพื่อให้โปรแกรม copy ฐานข้อมูล Access ไปไว้ใน Project Directory เฉพาะเมื่อมีการแก้ไขฐานข้อมูลเท่านั้น
  • จากนั้นให้กด Save ครับ
  • ให้ Double Click ที่บริเวณ Title Bar หรือ ส่วนหัวของ Form เพื่อเข้าไปดูโค้ดข้างใน จะเป็น Form Load Event
  • จะเป็นเหตุการณ์ (Event) ที่เกิดขึ้นตอนฟอร์มเปิดขึ้นมาครับ
  • เราจะเขียนโค้ดตรงบริเวณเหตุการณ์ Form Load เพื่อกำหนดค่าบางอย่างครับ เช่น การเชื่อมต่อฐานข้อมูล เป็นต้น
  • ผมจะทำการปรับแต่ง DataGridView โดยใช้ With...End With Statement มาช่วยเพื่อให้เขียนโค้ดสั้นลงครับ
  • พิมพ์คำว่า With ตามด้วยชื่อ DataGridView จากนั้นเคาะ Enter โปรแกรมจะเพิ่ม End With มาให้อัตโนมัติครับ
  • ต่อไปเราไม่ต้องอ้างชื่อ DataGridView อีกแล้ว สามารถพิมพ์ . (Dot) ตามด้วยชื่อคำสั่ง Property หรือ Method ได้เลย
  • คำสั่งแรก .ClearSelection Method เป็นคำสั่งสำหรับเคลียร์ Cell ที่เลือก หรือ ยกเลิก การเลือก Cell ครับ
  • คำสั่งต่อไป .ReadOnly Property ถ้ากำหนดเป็น True จะเป็นการป้องกันไม่ให้ User แก้ไข Cell ได้
  • ค่า default คือ False หมายถึง ให้ User แก้ไข Cell ได้ครับ
  • คำสั่งต่อไป .MultiSelect Property กำหนดเป็น False เพราะให้ User เลือกได้แค่ Cell เดียว
  • ค่า default คือ True (User สามารถเลือกได้หลาย Cell)
  • ตรงนี้ ให้เขียนโค้ดตามตัวอย่างในวิดีโอนะครับ
  • ขั้นตอนต่อไป เราจะเพิ่ม ชื่อสีที่ระบบรู้จัก (KnownColor) เข้าไปเป็นรายการใน ComboBox ทั้ง 2 ตัว
  • ให้ประกาศตัวแปร Array เป็นแบบชนิด String เพื่อใช้เก็บรายการชื่อสีทั้งหมดจาก KnownColor Enum ครับ
  • จะสังเกตุว่า ตรงนี้มีการใช้ Enum.GetNames(Type) Method เข้ามาช่วยด้วย โดยมีการคืนค่ากลับมาเป็น string array
  • จากนั้น นำชื่อสีทั้งหมดที่เก็บไว้ในตัวแปรอาร์เรย์ ชื่อ colors มาเป็นรายการให้กับ ComboBox ทั้ง 2 ตัวครับ
  • ตรงนี้สามารถเขียนคำสั่งตามผมได้เลยครับ
  • เมื่อเสร็จเรียบร้อยแล้ว ให้กดปุ่ม Save ครับ
  • ขั้นตอนต่อไป เราจะเขียนโค้ดดักจับเหตุการณ์ที่เกิดขึ้นตอน SelectedIndex Property ของ ComboBox เปลี่ยน
  • ให้ Double Click ที่ตัว ComboBox จะเป็นการเข้าสู่โค้ดของเหตุการณ์ ComboBox.SelectedIndexChanged
  • คำสั่งนี้ อธิบายได้ว่า เมื่อ User เลือกรายการจาก ComboBox ให้เปลี่ยนสีพื้นหลังของ ComboBox ตามรายการสีที่เลือก
  • รายการที่เลือกใน ComboBox ก็คือ SelectedItem Property
  • คำสั่งต่อไป เป็นการบอกให้ เคอร์เซอร์ของเมาส์ ไป Focus หรือ หยุด กระพริบ ที TextBox ชื่อว่า txtSearch ครับ
  • ให้เรา copy คำสั่ง 2 บรรทัดนี้ เพื่อนำไปใช้ต่อกับ ComboBox ตัวที่ 2 ครับ
  • ให้ Double Click ที่ ComboBox ตัวที่ 2 หรือ ตัวล่าง
  • จากนั้น วาง โค้ด ที่คัดลอกไว้ ลงไปครับ
  • แก้ไขคำสั่งนิดหน่อย โดยเปลี่ยนชื่อ จากเดิมเป็นของ ComboBox ตัวที่ 1 ไปเป็นชื่อของ ComboBox ตัวที่ 2 ครับ
  • ต่อไป เราจะไปเขียนโค้ดที่ Label ชื่อ lblReset (ใช้สำหรับรีเซ็ตค่าต่างๆ) ให้ Double Click ที่ตัว Label ได้เลยครับ
  • โค้ดต่อไปนี้ เป็นคำสั่งที่เราคุ้นเคยแล้ว เพราะผมได้แสดงตัวอย่างไว้ตั้งแต่วิดีโอที่ 1 ก็ให้ทำตามผมได้เลยครับ
  • คำสั่งต่อไป ผมจะทำการเคลียร์ Filter ของ BindingSource โดยใช้ BindingSource.Filter Property ครับ
  • คำสั่งต่อไป จะเป็นการรีเซ็ตการตั้งค่า ของ DataGridView ครับ
  • กำหนด DataSource ใหม่ให้กับ DataGridView
  • โดยใช้ Table1BindingSource ที่เราได้เคลียร์ Filter แล้ว
  • โค้ดบางส่วน ผมได้เคยอธิบายไว้แล้ว จึงไม่ขอกล่าวถึงอีกครับ
  • ตรงนี้ หากเกิด Error ขึ้น ให้โปรแกรมแสดงหมายเลข (Error Number) พร้อมคำอธิบายของข้อผิดพลาดด้วย
  • หลังจากแสดงข้อผิดพลาดแล้ว ให้ไปทำงานที่ คำสั่ง ErrEx:
  • ตรงคำสั่ง ErrEx: เป็นการบอกให้โปรแกรมออกจากการทำงาน
  • เสร็จแล้ว ให้ทำการ Save เสมอนะครับ
  • ขั้นตอนต่อไป เราจะเขียนคำสั่งที่ ปุ่มค้นหา ครับ
  • ผมจะเขียนโค้ดดักจับข้อผิดพลาดก่อน วิธีการคล้ายๆ กันครับ
  • ตรงนี้ขออนุญาตไม่อธิบายซ้ำ ให้ทำตามตัวอย่างได้เลยครับ
  • ผมจะตรวจสอบว่า TextBox ชื่อ txtSearch เป็นค่าว่างหรือเปล่า (ใช้ String.IsNullOrEmpty(String) Method ได้เหมือนกัน)
  • สังเกตุว่า มีการใช้ If...Then Else Statement มาช่วยสำหรับให้โปรแกรมตัดสินใจด้วย
  • ถ้าค่าใน txtSearch เป็นค่าว่าง หรือ User ไม่ได้พิมพ์อะไรลงไป ให้โปรแกรมออกจากการทำงานไปเลย (Exit Sub)
  • ต่อไป ถ้าไม่เข้าเงื่อนไขแรก ให้ไปทำที่ Else (ถ้า txtSearch ไม่เป็นค่าว่าง)
  • การทำงานตรงนี้ คือ ให้โปรแกรมทำการค้นหาข้อมูลใน Access ครับ
  • ให้ประกาศตัวแปร มารับค่าจาก txtSearch เพื่อนำไปใช้งานต่อ
  • ในที่นี้ เราจะใช้ BindingSource.Filter Property มาใช้สำหรับการค้นหาข้อมูลครับ
  • โดยการค้นหาข้อมูลตรงนี้ จะคล้ายกับคำสั่งใน SQL ครับ
  • ให้เขียนคำสั่งตามผมได้เลยครับ
  • ถ้าเราต้องการค้นหา Column ไหน ก็ให้ระบุชื่อ Column นั้นลงไป สังเกตุว่า มีการใช้ LIKE keyword มาช่วยด้วยครับ
  • โค้ดในส่วนนี้ค่อนข้างยาว ให้ตรวจสอบความถูกต้องอีกครั้ง
  • เราจะตรวจสอบว่า เจอข้อมูลที่ค้นหาหรือเปล่า โดยการนับจำนวนแถว ถ้าไม่เท่ากับ 0 แสดงว่า ค้นหาเจอ
  • ในกรณีที่ค้นหาข้อมูลเจอ ให้นำ BindingSource ที่มีการ Filter แล้ว มากำหนดเป็น DataSource ให้กับ DataGridView ครับ
  • ในกรณีที่หาข้อมูลไม่เจอ ก็ให้แสดงข้อความแจ้ง User ด้วย
  • ตรงนี้ให้เขียนตามผมได้เลยนะครับ
  • จากนั้น ให้เคลียร์ BindingSource Filter ครับ
  • แล้วนำไปกำหนดค่าเป็น DataSource ให้กับ DataGridView และ รีเซ็ตค่าต่าง ๆ ด้วยครับ
  • ถ้าการเขียนโค้ดที่มีการซ้ำซ้อนกัน ให้เราเขียนเป็น Sub Procedure ได้ ตามต้องการครับ
  • เราจะ copy code ที่มีการเขียนไว้แล้ว นำมาใช้งานต่อครับ
  • ตรงนี้ ให้ทำตามตัวอย่างในวิดีโอได้เลยครับ
  • เสร็จแล้วให้กด Save ครับ
  • ให้ตรวจสอบดูความถูกต้อง เรียบร้อยอีกครั้งครับ
  • ในวิดีโอนี้ก็มีเพียงเท่านี้ แล้วพบกันที่ วิดีโอ ถัดไปนะครับ
  • ขอบคุณมากครับ

Download subtitle

Description

Tutorials & Source Code: Visual Studio 2010 | Visual Basic .NET and Access Database.

English Closed Captions / Subtitles are Coming Soon

Source Code: How to Search data in an Access database.
➜ http://bit.ly/2Pu01iM

Here are all related to this video:
➜ http://bit.ly/2OsJJko

NEW UPDATE: Visual Studio 2019 | Visual Basic .NET (VB.NET 2019) Searching Data in an Access Database.

(Part 1/3) /watch?v=_gW8EIrdJ9g
(Part 2/3) /watch?v=WRuprNKbcyg
(Part 3/3) /watch?v=RKYReKRJuz4

Related Videos
+++ Visual Studio 2019 (VB.NET 2019) How to Connect to Data in an Access 2016 Database.
(Part 1/3) /watch?v=t68bCOPUzyM
(Part 2/3) /watch?v=o3YxbM4Lcwo
(Part 3/3) /watch?v=6UqEgH8mFi8

See also: (Recommended video)
+++ Download and Install Microsoft Visual Studio Community 2019.
Link: /watch?v=SYOMR6P9zeU

Premium Tutorials (Premium Courses)
Inventory Management System - Stock Management Database (Microsoft Access).
http://bit.ly/2ZFgZec

// ** //

Keep going, I’ll cheer you up!
Good news!!! if you are a student, you can call to consult your project development with me for free.

This is the Live Project Editing Service (LPES) for my Udemy students and those who watch videos from my YouTube channel (‍‍ Only!).

My Udemy: Online Course:
https://www.udemy.com/vbnet-crystal-reports
My YouTube Channel:
https://www.youtube.com/c/iBasskung

Note: Free service for everyone. No age limit around the world.

Please feel free to contact me at any time:
Facebook pages:
Code A Minute
IBasskung Tutorial
Code with iBasskung

// ** //

Visual Basic .Net (VB.Net): How to Search in Access Database using DataGridView DataSource, BindingSource Filter Part 1/2.
Visit my page: https://www.facebook.com/CodeAMinute

Subscribe for more ➜ http://bit.ly/2zAg8Ag

// ** //

If you would like the source code and project file. Please donate me via PayPal.
https://paypal.me/CodeAMinute/499

Discount!
https://paypal.me/CodeAMinute/199 (USD Only).

Please contact me: ibasskung@gmail.com

================================

Online Programming Courses + Free Souce Code!
‍ Please check out my online course on Udemy:
Visual Basic .Net, Access Database, EAN-13 Barcode Generator, and Crystal Reports using a Project-Based Approach. "The Point Of Sale (POS) System".

Enroll Now. You can get started on your first lesson right away
http://bit.ly/2uTJcR9

================================

Buy Now! and Get the following 3 projects for free!

1. Point Of Sale (POS System) used in this course.
http://bit.ly/2uTJcR9

2. VB.Net (UAM) - Personnel Management
(Video Tutorial) : http://bit.ly/2wkrxWv

3. C# (UAM) - Personnel Management
(Video Tutorial) : http://bit.ly/2JBhLlL

================================

⛳ Follow me around ⛳
✔ Want to get updates on new courses or other cool free stuff? Just follow me on social media if that's your thing!

Pages:
https://www.facebook.com/CodeAMinute
https://www.facebook.com/IbasskungTutorial
https://www.facebook.com/codewithibasskung

YouTube:
https://www.youtube.com/c/iBasskung

Udemy (Online Course):
https://www.udemy.com/vbnet-crystal-reports

Twitter:
https://twitter.com/#!/IBasskung

Blogger:
http://bit.ly/2wjuwvs

THANK YOU SO MUCH!

English Tags:
vb
vb.net
visual basic
visual basic access
access database
visual basic database
how to connect database to vb.net
how to connect access database to visual studio 2010
how to connect database to visual basic 2010
how to connect microsoft access database to visual basic 2010
programming in visual basic .net how to connect access database to vb.net
database connectivity in vb.net
vb.net login using access database
vb.net login form using access database
login form in vb.net with database access
visual studio access database
vb.net connect to database
vb.net connect to access database

My Tags - Ignore this:
Visual basic .Net 2010 Programming - Search in Access 2007 Database
Filtering Data In Datagridview Using Textbox
(DataGridView BindingSource Filter).
address book
address book software
how to filter data in DataGridView
DataGridView Sorting/Filtering in VB.NET
VB.NET 2010 How To Filter DataGridView based on Text Box input
How to filter a vb.net 2010 datagridview based on input entered in a text box using data binding source as a data sou

Trending videos