В моем приложении я использую представление данных для применения фильтров, где параметры фильтра передаются динамически. Если есть 2 параметра фильтра, то представление данных должно быть отфильтровано по параметру 1, а затем по параметру два. Я использую метод, который вызывается в цикле for, где я устанавливаю счетчик на общее количество параметров, выбранных с помощью списка, но фильтрация выполняется только для последнего параметра. Вот мой код:
string str = "";
for (int i = 0; i < listbox.Items.Count; i++)
{
if (listbox.Items[i].Selected)
{
if (str != string.Empty)
{
str = str + "," + listbox.Items[i].Text;
}
else
{
str = str + listbox.Items[i].Text;
}
}
}
string[] items = str.Split(',');
for (int i = 0; i < items.Length; i++)
{
ApplyFilter(items[i],dv);
}
private DataView ApplyFilter(string str,DataView newdv)
{
newdv.RowFilter = "[" + str + "]=" + ddl.SelectedItem.ToString();
return newdv;
}
Пожалуйста, предоставьте подходящее решение.
Заранее спасибо...