[英]Repeater - compare items and group
我有一個中繼器,此刻在我的第一列(它顯示的console type
列)中:
在我的列標題下:PS4,PS4,PS4,XBOX ONE,XBOX ONE和Nintendo wii
因此它正在對其進行排序,但我希望對其進行分組,以便僅在我認為應該有一種方法可以將dataItemRow與以前的dataItemRow進行比較的情況下才顯示一個控制台,但不確定如何進行。 有什么建議么?
void rptItems_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
//code here that goes through all items and compares items
}
}
人口:
SqlDataAdapter da = new SqlDataAdapter("Stored Procedure", conn);
da.SelectCommand.CommandType = CommandType.StoredProcedure;
da.SelectCommand.Parameters.Add(new SqlParameter("@Admin", "ALL"));
DataSet dataset = new DataSet();
da.Fill(dataset);
rptItems.DataSource = dataset.Tables[0];
rptItems.DataBind();
背后的主要思想是use two repeater controls
(任何基於模板的渲染控件)。 外部轉發器控件的ItemTemplate將托管標頭信息和內部轉發器控件。 內部轉發器控件將托管與標題(“分組依據”列)相對應的記錄
Item數據綁定中的主要邏輯是
- 獲取綁定的記錄,並獲取與group by列對應的所有記錄,並將其添加到臨時列表中
- 使用綁定記錄中的值構建標題信息
- 將臨時列表(從1)中的記錄綁定到內部轉發器中
- 忽略綁定的記錄和同一組的其他記錄
如果您需要代碼幫助,請告訴我。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.