Bonjour
J'ai le code suivant qui crée dans mon Repeater les Items dans mon ItemTemplate:
J'aimerais réécrire le code ci-dessous qui fontionne très bien dans le cas d'un repeater classique créé avec l'assistant, pour que mon repeater ci-dessus affiche (avec la classe "ExpensivePriceEmphasis")tous les items idSupplier dont la valeur est surérieure à 1731 .
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 Shared Sub Item_DataBinding(ByVal sender As Object, ByVal e As System.EventArgs) Dim ph As PlaceHolder = CType(sender, PlaceHolder) Dim ri As RepeaterItem = CType(ph.NamingContainer, RepeaterItem) Dim item1Value As Integer = _ Convert.ToInt32(DataBinder.Eval(ri.DataItem, "idSupplier")) Dim item2Value As String = _ Convert.ToString(DataBinder.Eval(ri.DataItem, "SOCIETE")) Dim item3Value As String = _ Convert.ToString(DataBinder.Eval(ri.DataItem, "ADRESSE")) CType(ph.FindControl("item1"), Label).Text = item1Value.ToString() CType(ph.FindControl("item2"), HyperLink).Text = item2Value CType(ph.FindControl("item3"), Label).Text = item3Value.ToString() End Sub
Ci-dessous le code qui fonction en mode classique:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 Protected Sub Repeater1_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.RepeaterItemEventArgs) Handles Repeater1.ItemDataBound If e.Item.ItemType = ListItemType.Item OrElse _ e.Item.ItemType = ListItemType.AlternatingItem Then Dim product As DataSet1.SuppliersRow = _ CType(CType(e.Item.DataItem, System.Data.DataRowView).Row, _ DataSet1.SuppliersRow) If product.idSupplier > 1784 Then Dim idSupplierLabel As Label = CType(e.Item.FindControl("idSupplierLabel"), Label) idSupplierLabel.CssClass = "ExpensivePriceEmphasis" End If End If End Sub
Partager