C# textBox i DatagridView

0

Witam

Mam pytanie odnośnie tych dwóch kontrolek. No formularzu mam wypełnioną kontrolkę DataGridView danymi, oraz kontrolkę TextBox.

I teraz mam pytanie jak np. zrobić tak, aby: wpisujemy w textBox literke "a" automatycznie dataGridView wyświetla wszystkie wyrazy zaczynające się na "a"; wpisujemy kolejną literkę "ab" dataGridView automatycznie wyszukuje wyrazy rozpoczynające się na "ab".

Jak wykonać taką czynność bez użycia przycisku?? Zastanawiałam się czy czasami nie ma jakieś opcji w zdarzeniach "textBoxa" ??

dziękuje

0

zdarzenia: KeyDown, KeyPress, KeyUp

0

podlaczenie kontrolek

dataset -> datatable -> dataview -> datagridview

jesli chodzi o textboxa, to najlepszym eventem bedzie textchange, tylko ze to zdazenie jest wykonywane za kazdym razem jak sie zmieni tekst, w nim mozesz na pale wpisac

dataview1.RowFilter="nazwa_pola like '%"+textbox1.text+"%'";

rozwiazanie to ma jeden mankament, bedzie dzialalo dokladnie tak jak Ty chcesz, co dla paru tysiecy rekordów bedzie stanowilo problem, przyklad

masz baze filmow, znasz tytul filmu ktory chcesz znalezc, wiec zamiast jednej literki wpisujesz Od razu caly wyraz, np "matrix" program niepotrzebnie przeszukuje cala baze 6 razy, (masz 6 liter) moim zdaniem lepiej zrobic zdazenie onkeydown, w nim wpisac

if (e.KeyCode==Keys.Enter)
{
dataview1.RowFilter="nazwa_pola like '%"+textbox1.text+"%'";
}

roznica polega na tym, ze program reaguje dopiero na nacisniecie klawisza enter, uzytkownik moze go wcisnac po jednej literce, lub po calym wyrazie, opcje lepsza dla Ciebie wybierz sam...

0

A jak ja mam wypełnioną kontrolkę dataGridView: DataSet -> tableAdapter->bindingSource1;
to jak mam wyszukiwać??

0

Mam jakby ktoś potrzebował:

dataGridView1.DataSource = bindingSource1;
bindingSource1.Filter = "akronim like '%" + textBox1.Text + "%'";

1 użytkowników online, w tym zalogowanych: 0, gości: 1