从DataTable向gridview添加少量记录

时间:2015-04-09 11:56:42

标签: c#

我一直在研究asp.net/C#项目。我可以将DataTable绑定到gridview。但我有一种情况,我不想绑定DataTable中的所有记录。是否有任何方法只将少量记录绑定到gridview? GridView.DataBind()的任何替代品?

谢谢

3 个答案:

答案 0 :(得分:1)

试试这个,

使用数据表选择查询可以实现此目的, 例如,

DataTable dt=yourdata;
DataRow[] dr=dt.Select("columnname='Maths'");

foreach (DataRow row in dr) {
   dt.ImportRow(row);
}
GridView1.DataSource=dt;
GridView1.DataBind();

其中Maths =您的搜索条件。

答案 1 :(得分:0)

您可以手动添加行,即不使用数据源。

var newRowIndex = dataGridView1.Rows.Add(firstValue, secondValue, thirdValue);

您可以这样使用它:

foreach (System.Data.DataRow row in myDataTable.Rows)
{
    if(meets my criteria...)
    {
        dataGridView1.Rows.Add(row["Column1"], row["Column2"], row["Column3"]);
    }
}

事实上,这可能是一个更好的解决方案,因为它允许您在UI中轻松地对列进行排序,而绑定到数据源则不允许这样。

答案 2 :(得分:0)

将DataView用于DataTable,以便您能够过滤记录并将数据视图分配给网格。

例如:

DataView dv = new DataView(DataTable, "Column1=Value", "Column2", DataViewRowState.CurrentRows);