Standardmäßig wird jede Zeile einer Gridview jeder Zeile in einer Datentabelle oder Dataset zugeordnet, die an ihre Datenquelle angehängt ist. Was aber, wenn ich diese Zeilen in mehreren Spalten anzeigen möchte. Zum Beispiel, wenn es 10 Zeilen hat, sollten 5 Zeilen jeweils in 2 Spalten nebeneinander angezeigt werden. Auch kann ich dies mit dem Infragistics-Raster tun. Ist das möglich?Zeilen in mehreren Spalten in Asp.net anzeigen. Gridview
Antwort
Sie können stattdessen eine DataList
Steuerung verwenden. Es verfügt über eine RepeatColumns
-Eigenschaft, mit der Sie die Anzahl der Spalten festlegen können, die Sie anzeigen möchten. In .NET Framework 3.5 gibt es eine noch bessere Lösung, die ListView
Kontrolle. Sie finden weitere Informationen zur Verwendung des ListView-Steuerelements here.
Können Sie nicht einfach zwei identische gebundene Spalten hintereinander setzen?
asp: datalist ist gut genug, um die req zu erfüllen. –
Wenn dies eine reine Codierung Übung ist, binden Sie an das RowDataBound-Ereignis der Gridview. Auf diese Weise können Sie tun:
e.Row.Cells(2).Text = e.Row.Cells(1).Text
Dieser Text aus der Spalte 1 in Spalte platzieren würde 2, nachdem es aus der Datenbank gezogen wurde. Sie können Spalten auch dynamisch mit einer ähnlichen Methode erstellen.
Re-lesen, ich glaube, ich verstehe dein Problem falsch.
Wenn Sie ListView nicht verfügbar haben und keine Tabellen verwenden möchten, können Sie DataList mit RepeatLayout-Attributset für den Datenfluss verwenden, das Daten in Spanpaaren zurückgibt, abhängig davon, wie viele Spalten Sie ausgewählt haben. Positionieren Sie die Spannen dann mit CSS (Float oder Inline-Block anzeigen). – Dan