Děkuji opět za pomoc, ale stále nejsem u konce. Podle Vašich námětů jsem nakonec sesmolil toto ... (Celý výpočet jsem musel dát do události "ItemDataBound", protože v původní "ItemCreated" jsem dostával hlášení, že vstupní řetězec nemá správný formát - zřejmě položky používané ve výpočtu byly při provádění prázdné)
Protected Sub Repeater1_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.RepeaterItemEventArgs)
If e.Item.ItemType <> ListItemType.Item Or e.Item.ItemType <> ListItemType.AlternatingItem Then
Dim SumCena As Decimal
SumCena = CDec(CType(e.Item.FindControl("lbl_ks"), Label).Text * CType(e.Item.FindControl("lbl_AktCena"), Label).Text)
CType(e.Item.FindControl("lbl_SumCena"), Label).Text = Format(SumCena, "C")
Dim DPH As Integer
If CType(e.Item.FindControl("lbl_SazbaDPH"), Label).Text.Length = 2 Then
DPH = CInt(CType(e.Item.FindControl("lbl_SazbaDPH"), Label).Text.Substring(0, 1))
End If
If CType(e.Item.FindControl("lbl_SazbaDPH"), Label).Text.Length = 3 Then
DPH = CInt(CType(e.Item.FindControl("lbl_SazbaDPH"), Label).Text.Substring(0, 2))
End If
Dim SumCenaDPH As Decimal
SumCenaDPH = SumCena + (SumCena / 100 * DPH)
CType(e.Item.FindControl("lbl_SumCenaDPH"), Label).Text = Format(SumCenaDPH, "C")
Dim AktCena As Decimal
AktCena = CType(e.Item.FindControl("lbl_AktCena"), Label).Text
CType(e.Item.FindControl("lbl_AktCena"), Label).Text = Format(AktCena, "C")
End If
End Sub
a zdálo se, že to již funguje jak má. Nyní jsem, ale zjistil, že pokud repeater načítá z databáze pouze jednu položku, je vše v pořádku. Pokud však má repeater zobrazit více položek, hlásí opět, že odkaz není nastaven na instanci objektu ... Děkuji
|