写入文本框?

时间:2016-11-25 18:20:19

标签: vb.net winforms

这里有愚蠢的问题,但这是我的代码:

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Dim dt As DataTable
    dt = CType(dgrGrid.DataSource, DataTable).Copy
    Dim drs() As DataRow = dt.Select("CustomerID = 222")
    For Each row As DataRow In drs
        For Each item As Object In row.ItemArray
            Debug.WriteLine("{0}", item)
        Next
    Next
End Sub

我可以在调试窗口中看到我的所有值。

现在,如果我需要将此值吐出到文本框中,我不知道该怎么做。

目标是继续使用itemArray来获取价值。

2 个答案:

答案 0 :(得分:2)

您可以使用以下内容:

Dim rows = dt.Select() ' Or select using a criteria like you did
Me.TextBox1.Text = String.Join(Environment.NewLine, _
    rows.Select(Function(r) String.Join(",", r.ItemArray)))

TextBox1应为MultiLine以显示Environment.NewLine

此外,如果您正在寻找AppendLine之类的内容,请使用:

Me.TextBox1.AppendText("something" & Environment.NewLine)

答案 1 :(得分:1)

除了Reza的答案之外,如果你像我一样懒惰并且不想在任何地方写Environment.NewLine,你可以创建一个添加新行的扩展方法:

Imports System.Runtime.CompilerServices

Public Module Extensions
    <Extension()> _
    Public Sub AppendLine(ByVal TargetTextBox As TextBox, ByVal Text As String)
        TargetTextBox.AppendText(Text & Environment.NewLine)
    End Sub
End Module

用法:

For Each item As Object In row.ItemArray
    TextBox1.AppendLine(item.ToString())
Next