DataSet ds填充后的结果如下:
sno pno
001  1
002  2
003  3
...   //sno,pno均为string类型
如果我想得到pno=2这个数据,该怎么写呢?//ds.Tables[0].
请各位大虾指点一下!

解决方案 »

  1.   

    DataGridView.Row[1].cell[1]
      

  2.   

    DataRow[] rows=ds.Tables[0].Select("pno='2'");
      

  3.   


    如何:定位数据表中的特定行大多数使用数据的应用程序需要访问满足某种条件的特定记录。为了找到数据集中的特定行,可调用 DataRowCollection 对象的 Find 方法。如果存在主键,将返回 DataRow 对象。如果找不到主键,则返回空值。
    查找具有主键值的行在类型化的数据集中查找具有主键值的行    *      调用使用表的主键来定位行的强类型 FindBy 方法。      在下面的示例中,CustomerID 列是 Customers 表的主键,因此生成的 FindBy 方法为 FindByCustomerID。此示例演示如何使用生成的 FindBy 方法将特定的 DataRow 赋给变量。
          Visual Basic      Dim customersRow As NorthwindDataSet.CustomersRow
          customersRow = NorthwindDataSet1.Customers.FindByCustomerID("ALFKI")      C#      NorthwindDataSet.CustomersRow customersRow = 
              northwindDataSet1.Customers.FindByCustomerID("ALFKI");      J#      NorthwindDataSet.CustomersRow customersRow = 
              northwindDataSet1.get_Customers().FindByCustomerID("ALFKI");在非类型化的数据集中查找具有主键值的行    *      调用 DataRowCollection 集合的 Find 方法,同时将主键作为参数传递给它。      下面的示例演示如何声明新行(名为 foundRow)并将 Find 方法的返回值分配给它。如果找到主键,消息框中将显示列索引 1 的内容。
          Visual Basic      Dim s As String = "primaryKeyValue"
          Dim foundRow As DataRow = DataSet1.Tables("AnyTable").Rows.Find(s)      If foundRow IsNot Nothing Then
              MsgBox(foundRow(1).ToString())
          Else
              MsgBox("A row with the primary key of " & s & " could not be found")
          End If      C#      string s = "primaryKeyValue";
          DataRow foundRow = dataSet1.Tables["AnyTable"].Rows.Find(s);      if (foundRow != null) 
          {
              MessageBox.Show(foundRow[1].ToString());
          }
          else
          {
              MessageBox.Show("A row with the primary key of " + s + " could not be found");
          }      J#      String s = "primaryKeyValue";
          DataRow foundRow = dataSet1.get_Tables().get_Item("AnyTable").get_Rows().Find(s);      if (foundRow != null)
          {
              MessageBox.Show(foundRow.get_Item(1).toString());
          }
          else
          {
              MessageBox.Show("A row with he primary key of " + s + " could not be found.");
          }通过列值查找行
    基于任意列中的值查找行    *      使用 Select 方法创建数据表,Select 方法基于传递给它的表达式返回 DataRow 数组。有关创建有效表达式的更多信息,请参见关于 Expression 属性的页的“表达式语法”部分。      下面的示例演示如何使用 DataTable 的 Select 方法来定位特定行。
          Visual Basic      Dim foundRows() As Data.DataRow
          foundRows = DataSet1.Tables("Customers").Select("CompanyName Like 'A%'")      C#      DataRow[] foundRows;
          foundRows = dataSet1.Tables["Customers"].Select("CompanyName Like 'A%'");      J#      DataRow[] foundRows;
          foundRows = dataSet1.get_Tables().get_Item("Customers").Select("CompanyName Like 'A%'");