Pytanie : Filtrowy Siatka

Cześć

I mieć siatka z textbox.

I am the siatka z kod dokąd datasourceaccountnature mieć the dane. Teraz jeżeli gdy użytkownik zaczynać the dane w siatka I chcieć the siatka opierać się na tekst wchodzić do użytkownik. Dlaczego I robić to? w tym samym czasie, gdy użytkownik zaczynać backspace i robić the textbox opróżniać the wszystkie rejestr musieć w siatka gdy ono być w czasie the grid

intymny kawitacyjny PopulateGrid ()
{
var datasourceaccountnature = nowy EntityCollectiontureEntity> (nowy AccountnatureEntityFactory ());
var bucketaccountnature = nowy RelationPredicateBucket ();

using (var adapteraccountnature = nowy DataAccessAdapter ())
{
bucketaccountnature. PredicateExpression. Dodawać (AccountnatureFields.Flag == StandardFlag.recordvalidflag);

                adapteraccountnature.FetchEntityCollection (datasourceaccountnature, bucketaccountnature, (0),
nowy SortExpression (AccountnatureFields.Description |
SortOperator.Ascending));

dgridaccountnature.DataSource = datasourceaccountnature;
}
}

Odpowiedź : Filtrowy Siatka

Dlaczego twój dane źródło zależeć na jaki typ datasource ty używać…

Dla DataTable, ty móc BindingSource.Filter lub DataView lub w niektorych przypadkach SqlDataSourceView.FilterExpression.

Od twój kod twój, ono patrzeć jak the datasource ty używać (datasourceaccountnature) być inkasowy (EntityCollection) typ.

Typowo dla kolekcja jako datasource w gridview, the móc robić jak pokazane w the kod robić:

Widzieć jeżeli to pomagać.
(1):
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
społeczeństwo klasowy YourClass
        {
            EntityCollection datasourceaccountnature;

            intymny kawitacyjny PopulateGrid ()
            {
                // datasourceaccountnature być teraz klasowy członek

                datasourceaccountnature = nowy EntityCollection (nowy AccountnatureEntityFactory ());

                var bucketaccountnature = nowy RelationPredicateBucket ();

                … // kod kod pokazywać tutaj
            }

            intymny pustka textBox1_TextChanged (przedmiot nadawca, EventArgs e)
            {
                // datasourceaccountnature być the jeden ty używać w PopulateGrid metoda w twój kod.
                // Robić datasourceaccountnature jako członek the klasa tak, że my móc ono tutaj.

                dataGridView1.DataSource = datasourceaccountnature.FindAll (FilterList);
            }

            intymny bool FilterList (AccountnatureEntity a)
            {
                // pole AccountnatureEntity
                // powrót prawdziwy jeżeli ten śródpolny wartość zawierać the tekst wchodzić do użytkownik w textBox1
                // inaczej powrotny fałszywy.

                // na przykład jeżeli AccountnatureEntity mieć pole wymieniać "Tytuł", wtedy 
                powrotny a.Title.Contains (textBox1.Text);
            }
        }
Inne rozwiązania  
 
programming4us programming4us