جستجو در دیتاگرید بر اساس چند تکس باکس با استفاده از LINQtoSQL

برای جستجو در DataGridView بر اساس چندین TextBox ابتدا یک برنامه ویندوزی به صورت زیر ایجاد کنید :
linq-to-sql-1

برای روی نام پروژه در Solution Explorer راست کلیک کرده و از منوی ظاهر شده بر روی add و در نهایت new item کلیک می کنید. در صفحه ظاهر شده بر روی گزینه LINQ TO SQL Classes کلیک کرده و دکمه OK را بزنید. از منوی View بر روی Server Explorer کلیک کنید و به صورت زیر بانک مورد نظرتان را drag نمایید :
linq-to-sql

سپس کدهای زیر را در رویداد Load فرم و Click دکمه بنویسید :

using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {

        private DataClasses1DataContext context = new DataClasses1DataContext();

        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {            
            this.dataGridView1.DataSource = context.tablePersonels;
        }

        private void button1_Click(object sender, EventArgs e)
        {
            IEnumerable<tablePersonel> query = from personel in context.tablePersonels  
                        where personel.FirstName.Contains(this.textBox1.Text) &&        
                              personel.LastName.Contains(this.textBox2.Text)            
                        select personel;                                                
                                                                                        
            this.dataGridView1.DataSource = query;                                      
        }
    }
}

حال برنامه را اجرا و نتیجه را مشاهده کنید :
linq-to-sql-2

linq-to-sql-3

linq-to-sql-4