1

私のプロジェクトでは、ある時点で、DataSet 内のすべての行をロードし、「時間」アイテムの順に FlowLayoutPanel に追加する傾向があります。これは私がやろうとしていることですが、「時間」の値が最も古い場合は、最初にコントロールを追加する必要があります:

For i=1 to DataSet.Tables("myTable").Rows.Count
 Dim Row as Datarow = DataSet.Tables("myTable").Select("ID = " & i)
 Dim Time as Date = Row.Item("Time")
 Dim NewLabel as Label
 NewLabel.text = Time.ToString()
 FlowLayoutPanel.Controls.Add(newLabel)
Next

それ、どうやったら出来るの ?

4

1 に答える 1

1

使用できますLinq-To-DataSet

Dim timeOrderedRows = From row in DataSet.Tables("myTable")
                      Order By row.Field(Of Date)("Time")
For Each row As DataRow In timeOrderedRows
    Dim Time as Date = row.Field(Of Date)("Time")
    Dim Label as New Label
    Label.text = Time.ToString()
    FlowLayoutPanel.Controls.Add(Label)
Next

これを逆に行うにはどうすればよいですか (最新のものから古いものへ)

追加するだけですDescending

....
Order By row.Field(Of Date)("Time") Descending
于 2013-10-25T22:57:09.957 に答える