2009-08-25 66 views
1

私はASP.NETを初めて使用しています。リストビューを使用してSQL結果を表示しようとしています。私は4GuysFromRolla.com websiteのデータフィールドで結果をグループ化する例を使用しています。しかし、私はデータフィールドで項目をグループ化して、少し不器用な方法を見つけました。それを行うより良い方法はありますか?ASP.Netの行をグループ化するListView

ありがとうございました。

答えて

2
+0

私はLinq to SQLを使用することでわかりませんでしたが、一度DBmlに関係を追加すると、それは魅力的でした。ありがとう。 – kevindaub

+0

サイトはオフラインですが、Wayback Machineが再びプルスルーします。 http://web.archive.org/web/20101125093922/http://mattberseth.com/blog/2008/01/building_a_grouping_grid_with.html – atjoedonahue

0

私は、ListViewコントロールを使用したことがないが、私はGridViewコントロールにグループ分けんでした。あなたがしたい場合は、リストビューに、このオーバーを移植しようとすることができます

Protected Overrides Sub Render(ByVal writer As System.Web.UI.HtmlTextWriter) 
    Dim tblGrid As Table = Me.GridView1.Controls(0) 
    Dim strLastCat As String = "@" 
    Dim row As GridViewRow 


    For Each row In GridView1.Rows 
     Dim intRealIndex As Integer = tblGrid.Rows.GetRowIndex(row) 
     Dim strCat As String = Me.GridView1.DataKeys(row.RowIndex).Value 

     If strLastCat <> strCat Then 
      Dim rowHeader As New GridViewRow(intRealIndex, intRealIndex, DataControlRowType.Separator, DataControlRowState.Normal) 
      Dim newCell As New TableCell 

      newCell.ColumnSpan = Me.GridView1.Columns.Count 
      newCell.BackColor = System.Drawing.Color.FromArgb(61, 138, 20) 
      newCell.ForeColor = System.Drawing.Color.FromArgb(255, 255, 255) 
      newCell.Font.Bold = True 
      newCell.Font.Size = New FontUnit(FontSize.Larger) 
      newCell.Text = strCat 

      rowHeader.Cells.Add(newCell) 
      tblGrid.Controls.AddAt(intRealIndex, rowHeader) 
      strLastCat = strCat 

     End If 

    Next 

    MyBase.Render(writer) 
End Sub 

コードは、各カテゴリのヘッダーを作成します。 http://www.truedietreviews.com/diet-reviews/

関連する問題