2012-04-04 8 views
0

Ich muss mehrere Zeilen in Datenansicht filtern. Hier habe ich rowfilter benutzt. Aber ich möchte mehrere Zeilen filtern. Welcher Befehl kann verwendet werden? Mein Code ist:So filtern Sie mehrere Zeilen in der Datenansicht

foreach (string s1 in list) 
{ 
    if (s1 != string.Empty) 
    { 
     dvData.RowFilter = "(code like '" + searchText + "*') AND (code <> '" + s1 + "')"; 
    } 
} 

Das Problem ist, es dauert nur einen Wert und es wird während der Schleife überschrieben.

Antwort

0

Wenn Sie alle Codes für code Feld hinzufügen möchten, in RowFilter dann können Sie dies versuchen:

StringBuilder sb = new StringBuilder(); 

foreach(string s in list){ 
    if (s != string.Empty) 
     sb.Append(string.Format(" AND (code <> '{0}')", s)); 
} 

string rowFilter = string.Format("(code like '{0}*')", searchText) + sb.ToString(); 

dvData.RowFilter = rowFilter; 
+0

Dank, seine Arbeit gut. anstatt "in" im Befehl zu verwenden. hier angehängt mit 'und' Befehl. – kk1076

Verwandte Themen