Fråga : Filtrera rastret

Hi

I har ett raster med förmiddagen för textbox.

I befolkar rastret med efter för att kodifiera var datasourceaccountnaturen har datan. Nu, om, när användaren startar att skriva in, datan i raster som jag önskar att filtrera rastret som baseras på text som skrivs in av användaren. Hur jag gör denna? samtidigt när användaren startar den tränga backstegstangenten och gör textboxen, töm alla rekorden bör synas i raster, som det ägde rum på tiden av att ladda den privata utan laga kraft PopulateGrid () {datasourceaccountnature för grid

för
var = nya EntityCollectiontureEntity> (nya AccountnatureEntityFactory ()); bucketaccountnature för
var = nya RelationPredicateBucket ();

using (var-adapteraccountnaturen = nya DataAccessAdapter ())
{bucketaccountnature för
. PredicateExpression. Tillfoga (AccountnatureFields.Flag == StandardFlag.recordvalidflag);

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

dgridaccountnature.DataSource = datasourceaccountnature;
}
för
} " klar "

Svar : Filtrera rastret

Hur man filtrerar din datakälla beror på vilken typ av datasourcen du använder…,

För DataTable du kan använda BindingSource.Filter eller DataView eller i vissa fall SqlDataSourceView.FilterExpression.

Från ditt kodifiera över, det ser likt datasourcen som du använder (datasourceaccountnaturen) är en typ för samling (av EntityCollection).

Typisk för samlingar som datasource i gridview, filtrera kan göras som visat i den nedanföra kodifiera:

Se, om detta hjälper.
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:
allmänhet klassificerar YourClass
        {
            EntityCollection datasourceaccountnature;

            privata utan laga kraft PopulateGrid ()
            {
                den // datasourceaccountnaturen är nu en klassificeramedlem

                datasourceaccountnature = nya EntityCollection (nya AccountnatureEntityFactory ());

                var-bucketaccountnature = nya RelationPredicateBucket ();

                … // annan kodifierar inte visat här
            }

            privat utan laga kraft textBox1_TextChanged (anmärka avsändaren, EventArgs e),
            {
                den // datasourceaccountnaturen är den som du använde i den PopulateGrid metoden i ditt kodifierar.
                // gör datasourceaccountnature som medlemmen av klassificera, så att vi kan använda den här.

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

            privat bool FilterList (AccountnatureEntity a)
            {
                // som ska filtreras vid en sätta in av AccountnatureEntity
                återgång // true, om det sätter in värderar innehåller texten som skrivs in av användaren i textBox1
                // annars återgångt falskt.

                // om for example AccountnatureEntity har en sätta in som namnges ”titeln”, därefter 
                återgång a.Title.Contains (textBox1.Text);
            }
        }
Andra lösningar  
 
programming4us programming4us