Bakın normalde gridin üstünde arama yapmayız, gridler sadece verilerimizi kullanıcıya gösterdiğimiz arayüz nesneleri.
Örnek vermek gerekirse ;
Bir observablecollection oluşturun bunu datagrid 'in itemsource kısmına atayın.Sonra veri tabanından yada verilerinizi nerede saklıyorsanız oradan çekip son halini observablecollection'a atarsınız Datagride değişiklikler dinamik olarak yansır.Siz datagridde
arama yapmak yerine observablecollection da arama yapar aradığınızı bulursunuz.
O da basitçe bir kaç method ile olur mesela bir kullanıcı tanımlı sınıf oluşturduğunuzu düşünüp bunu observablecollection olarak tuttuğunuzu varsayalım =>
Listem.Contain(kullanıcıtanımlısınıf nesnesi) => dönen sonuç true false , var yada yok.
Kullanıcı arayüzü ile işimiz yok yani mantık basitçe budur.
Ve son olarak söylüyorum WPF kullanın.
Kolay gelsin...