Сортировка данных с помощью DataView

У меня есть DataGridView с примечаниями столбца (пройдено, не выполнено). Например, я хочу показать все записи Failed в столбце Remarks с помощью DataView, как мне это сделать? Спасибо. Вот код, над которым я работаю:

ds.Tables["Grades"].PrimaryKey = new DataColumn[] { ds.Tables["Grades"].Columns["StudentID"] };
DataRow dRow = ds.Tables["Students"].Rows.Find(txtSearch.Text);

DataView dataView = new DataView(dt);
dataView.RowFilter = "Remarks = " + txtSearch.Text;
dgvReport.DataSource = dataView;

person Community    schedule 22.11.2011    source источник
comment
Примечание. Нет необходимости или нежелательно указывать C# winforms в заголовке вопроса. Для этого и нужны теги.   -  person    schedule 22.11.2011
comment
Как вы можете определить, сдал или не сдал учащийся в примечаниях к столбцу? Вы ставите «сдал» или «не сдал» внутри столбца?   -  person Sam Casil    schedule 22.11.2011


Ответы (2)


Вы можете использовать запрос LINQ.

DataTable grades = dataSet.Tables["Grades"];

EnumerableRowCollection<DataRow> query = from grade in grades.AsEnumerable()
                                         where grade.Field<string>("Remarks") == "Failed"
                                         select grade;
DataView view = query.AsDataView();
person Soliah    schedule 22.11.2011

Вы можете попробовать использовать следующий код, чтобы получить данные в DataView на основе вашего фильтра.

DataRow[] drow= dt.Select("Remarks = " + txtSearch.Text);

DataTable dtFilterData = drow.copyToDataTable();

dgvReport.DataSource = new DataView(dtFilterData);

person Vidya    schedule 22.11.2011