如何在标签上显示计数值?



我在datagridview中有一个监控,它显示了车辆及其类型的列表。我想计算每种车辆的数量。

示例:数据网格视图中有 8 辆轿车和 5 辆摩托车,我希望它显示在标签中。

这是我的代码:

Dim table As New DataTable()
Dim command As New MySqlCommand("select count(ctype) from tblreport where ctype='SUV'", conn)
command.Parameters.Add("count(ctype)", MySqlDbType.VarChar).Value = Label6.Text
Dim adapter As New MySqlDataAdapter(command)
adapter.Fill(table)
DataGridView2.DataSource = table

分配数据源后,只需添加以下内容:

Label1.Text=datagridview1.rows.count

Text是许多控件的属性,如标签,按钮等。此属性可用于在控件上显示文本覆盖。Datagridview有行,对吧?因此,正如您所说,您希望显示数据网格视图包含的行数。所以你需要做的就是使用Datagridview1.rows.count,我认为这个根本不需要任何解释。

无论如何,让我们更进一步。

你还说

数据网格视图中有 8 辆轿车和 5 辆摩托车,我希望它显示在标签中。

默认情况下,没有应用程序可以了解有多少记录与轿车摩托车匹配。但如上所述,vb 能够计算数据网格视图的行(默认情况下/通过简单代码)。所以试着想一想,如果数据网格视图在任何单元格中只有包含轿车摩托车的行,vb.net 可以很容易地计算它。右??

所以,如果你问我,我们如何只得到包含轿车马达的行,那么我作为你,谷歌如何只显示你正在寻找的结果,而不是显示它所拥有的一切?答案很简单,谷歌准确地显示你搜索的内容。说到数据库,我们称之为过滤/排序/甚至搜索。因此,您需要做的就是过滤数据库。有几种方法,如果我开始解释,会花费很多时间。但是,请检查这些:

• http://csharp.net-informations.com/datagridview/csharp-datagridview-filter.htm

• 在不更改数据源的情况下筛选数据网格视图

现在,让我们更深入。如果您浏览上面的链接,您将能够在其任何单元格中仅显示包含轿车等的行。如果您想要所有行,但只希望标签显示轿车的数量(行数)左右怎么办?

在这种情况下,您可以使用Datatable.

在此处了解有关数据表的更多信息

您可以轻松地使用数据表来计算仅包含您要查找的QUERY的行。为此,您可以按如下方式编码:

Dim cmd as new MySqlCommand("Select * from [tablename](columnname)(@value)",con)
cmd.parametres.addwithvalue("@value","Sedan")
Dim table as new DataTable
Dim adap as new MySqlDataAdapter
adap.fill(table)
If table.rows.count <=0 then
Else
LAbel1.text=table.rows.count

让我从dim table解释一下.在这里,我声明了一个数据表。但在此之前,我使用cmd.parametres.addwithvalue过滤数据集。然后,我使用DataAdapter并仅用包含SEDAN的 e 行填充DataTable。现在,专注于If table.Rows.Count <=0 Then...这指示是否没有包含查询的行(小于或等于 0)。然后我使用Else语句,这意味着数据表是否包含与查询匹配的行。在 else 语句中,我将Datatable的行数作为字符串/文本添加到Label中..

我希望这已经足够了,这个解释将来也会对你有所帮助。

使用用于填充 DataGridView 的同一数据表。仅将 select 语句更改为"从表名中选择 *"。我使用了 2 的索引,但更改为您表中的任何索引。列索引从零开始。

Dim totalSedans As Integer = 0
Dim totalMotorcycles As Integer = 0
Dim totalConvertable As Integer = 0
For Each row As DataRow In table.Rows
Select Case row(2).ToString
Case "Sedan"
totalSedans += 1
Case "Motorcycle"
totalMotorcycles += 1
Case "Convertable"
totalConvertable += 1
Case Else
Debug.Print("Something doesn't match categories")
End Select
Next
lblConvertable.Text = totalConvertable.ToString
lblMotorcycles.Text = totalMotorcycles.ToString
lblSedan.Text = totalSedans.ToString

相关内容

  • 没有找到相关文章

最新更新