在数据网格的单个列上连接字符串

Concatenate strings on a single column on a data grid

美好的一天,

我只是有一个关于 vb.net 数据网格的问题。我想合并所有单元格列值并将其放在一个字符串上。

数据网格值

ID 代码
1 110
2 120
3 130

需要在文本框上输出

文本框 1 = 110-120-130

我知道这是一个简单的问题,但在 google 上找不到它,这就是为什么我希望这里的一些老手能解决我的问题。提前谢谢你。

我不知道什么是数据网格,但我确定它基于某些重复结构,例如数据表、列表或二维数组

当您想使用重复连接构建字符串时,您可以使用 stringbuilder

Dim sb as New StringBuilder

Append 方法 return stringbuilder 本身,因此您可以调用 Append().Append()...

sb.Append("130").Append("-")

当你想重复做某事时,你可以在事物集合上使用循环

For Each ro as DataRow in someDataTable.Rows

Next ro

所以你可以在循环中调用来获取你想要的数据并将其放入stringbuilder

For Each ro as DataRow in someDataTable.Rows
  sb.Append(ro("Code")).Append("-")
Next ro

如果您更改 stringbuilder 的长度,它会切断字符串的结尾

sb.Length -= 1

要将 stringbuilder 转换为字符串,您可以使用其 .ToString() 函数

您现在拥有解决问题所需的所有工具。为避免疑义,几乎可以肯定您不能只是复制粘贴此代码并让它解决您的问题。你绝对必须保持头脑清醒,理解这个答案的教义并修改它以使其适用于你的情况