如何在sql适配器或数据表中搜索记录,

如何在sql适配器或数据表中搜索记录,,sql,winforms,c#-4.0,navigation,Sql,Winforms,C# 4.0,Navigation,如何搜索数据表中的记录,在我的应用程序中,我有大量的记录。 例如:搜索完成后,我将从表中获得1000条记录中的50条记录,现在我只想对搜索到的记录执行第一条、下一条、上一条和最后一条记录导航。如何做到这一点,我已经完成了常规导航(直接连接到sql),但在搜索记录中显示导航时遇到了一些困难。试试这个 var results = from myRow in myDataTable.AsEnumerable() where myRow.Field<int>("RowNo") == 1 s

如何搜索数据表中的记录,在我的应用程序中,我有大量的记录。
例如:搜索完成后,我将从表中获得1000条记录中的50条记录,现在我只想对搜索到的记录执行第一条、下一条、上一条和最后一条记录导航。如何做到这一点,我已经完成了常规导航(直接连接到sql),但在搜索记录中显示导航时遇到了一些困难。

试试这个

var results = from myRow in myDataTable.AsEnumerable()
where myRow.Field<int>("RowNo") == 1
select myRow;
var results=来自myDataTable.AsEnumerable()中的myRow
其中myRow.Field(“RowNo”)==1
选择myRow;

这里,我假设您已经使用“fetchData()”方法将数据提取到数据表中

// Global variable    
DataTable dt_rec = new DataTable();
int rowCount = 1;
int lastRowNum = 0;
在form_load事件中,调用了“fetchData()”方法。然后单击“下一步”
按钮单击事件,如下所示

private void NextButton_Click(System.Object sender, System.EventArgs e)
{
    if (lastRowNum > rowCount) {
        rowCount = rowCount + 1;
        setControlValue(dt_rec.Rows(rowCount - 1));
    } else {
        Interaction.MsgBox("Record Not Found", "Test");
    }
}
下面是“上一次”按钮单击事件

private void Previous_Click(System.Object sender, System.EventArgs e)
{
    if (rowCount > 1) {
        rowCount = rowCount - 1;
        setControlValue(dt_rec.Rows(rowCount - 1));
    } else {
        Interaction.MsgBox("Record Not Found", "Test");
    }
}
private void LastButton_Click(System.Object sender, System.EventArgs e)
{
    if (rowCount < lastRowNum) {
        rowCount = lastRowNum;
        setControlValue(dt_rec.Rows(lastRowNum - 1));
    } else {
        Interaction.MsgBox("Record Not Found", "Test");
    }
}
下面是“第一个”按钮的点击事件

private void FirstButton_Click(System.Object sender, System.EventArgs e)
{
    if (rowCount != 1) {
        rowCount = 1;
        setControlValue(dt_rec.Rows(0));
    } else {
        Interaction.MsgBox("Record Not Found", "Test");
    }
}
最后是“最后一次”单击事件

private void Previous_Click(System.Object sender, System.EventArgs e)
{
    if (rowCount > 1) {
        rowCount = rowCount - 1;
        setControlValue(dt_rec.Rows(rowCount - 1));
    } else {
        Interaction.MsgBox("Record Not Found", "Test");
    }
}
private void LastButton_Click(System.Object sender, System.EventArgs e)
{
    if (rowCount < lastRowNum) {
        rowCount = lastRowNum;
        setControlValue(dt_rec.Rows(lastRowNum - 1));
    } else {
        Interaction.MsgBox("Record Not Found", "Test");
    }
}

希望所有这些东西都能帮助您…

好的,请确认您想在datatable中实现分页功能,对吗???@Krishnaj Ya我也需要分页,@Sarvan请检查我的答案和评论。。。