【问题标题】:Count how many rows are in the dataset then display as text in a textbox?计算数据集中有多少行,然后在文本框中显示为文本?
【发布时间】:2011-12-15 05:57:53
【问题描述】:

如何计算数据集返回的行数,然后将总行数显示为 textbox.text 和只读,以便用户只能看到它们而不能更改它们?

到目前为止我有这个,但它没有返回一个数字并说它找不到表 0:

tbRecordsFound.Text = ds.Tables(0).Rows.Count

【问题讨论】:

  • “由于某种原因无法正常工作”是什么意思,您是否遇到任何错误?
  • 它得到一个错误并说,“找不到表0”
  • 听起来您的数据集不包含任何表格。
  • 所以你必须用 ds.Tables.Add(myDataTable) 添加这个 DataTable:msdn.microsoft.com/en-us/library/…
  • 我修好了。在填充数据集之前,我试图数数。

标签: vb.net datagridview dataset count


【解决方案1】:
tbRecordsFound.Text = ds.Tables(0).Rows.Count

上面的代码可以工作,但是你需要给表格一个标识符,例如:

tbRecordsFound.Text = ds.Tables("TableName").Rows.Count

这可以通过创建 DataAdapter 并使用“Fill”函数为表命名来完成。以下是“da”表示 DataAdapter 的示例:

da.Fill(ds, "TableName")

【讨论】:

    【解决方案2】:
    For i As Integer = 0 To yourdatagridviewName.Rows.Count() - 1 Step +1
            i = +i
            TextBox2.Text = i 
        Next
    

    【讨论】:

      【解决方案3】:

      试试这样的:

      tbRecordsFound.Text = ds.Tables.Cast<DataTable>().Sum(x => x.Rows.Count).ToString()
      

      你也可以这样做:

      Dim recordCount as Integer = 0;
      For Each table as Datatable in ds.Tables
          recordCount += table.Rows.Count
      tbRecordsFound.Text = recordCount.ToString()
      

      【讨论】:

      • @MDL:请参阅 LINQ 示例以获得更简单的内容。
      猜你喜欢
      • 1970-01-01
      • 2013-04-27
      • 2015-05-15
      • 2017-09-04
      • 2012-11-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多