vb.netでforループを使用して次を表示するには?
Type1
Desc1 1 $400
Desc2 1 $300
Type2
Desc3 1 $1400
Desc4 2 $2300
助けてください。
詳細な情報がなければ、正確な回答を作成することは困難です。ただし、このコード例は、問題を解決する方法を明らかにする可能性があります。
VB.Net コンソール アプリケーションを作成し、以下のコード例をコピーしてメイン モジュールに貼り付けて実行するだけです。
Module Module1
Sub Main()
Dim table As New System.Data.DataTable("TestTable")
With table
.Columns.Add("Type", GetType(String))
.Columns.Add("Description", GetType(String))
.Columns.Add("Number", GetType(Integer))
.Columns.Add("Value", GetType(Decimal))
End With
table.Rows.Add("Type1", "Desc1", 1, 400.0)
table.Rows.Add("Type1", "Desc2", 1, 300.0)
table.Rows.Add("Type2", "Desc3", 1, 1400.0)
table.Rows.Add("Type2", "Desc4", 2, 2300.0)
table.Rows.Add("Type2", "Desc5", 2, 700.0)
Dim outputDictionary As New Dictionary(Of String, List(Of String))
For Each row As DataRow In table.Rows
Dim typeName As String = CStr(row("Type"))
If (Not outputDictionary.ContainsKey(typeName)) Then
outputDictionary.Add(typeName, New List(Of String))
End If
outputDictionary(typeName).Add(String.Format("{0} {1} {2}", CStr(row("Description")), CInt(row("Number")).ToString(), CStr(row("Value"))))
Next
For Each namedType In outputDictionary
Console.WriteLine(namedType.Key)
For Each item In namedType.Value
Console.WriteLine(" " & item)
Next
Next
Console.ReadKey(True)
End Sub
End Module