[ vinkof @ 25.11.2012. 21:18 ] @
Item DataList kontrola mi se sastoje od više label kontrola i jedne CheckBox kontrole. Želja mi je da korisnik odabere do 10 CheckBox-a (checked) i da dodijelim string varijablama svojstvo text label i chackbox kontrola odabranih Itema.
Kroz primjer će biti jasnije. Trenutno pokušavam preko OnCheckedChanged događaja jedan po jedan Item, ali mislim da bi bilo bolje da korisnik najprije sve označi, a tek onda pročitam koji su čekirani i iz njih izvučem željene podatke. U ovom primjeru ne znam kako dalje jer je tekst svojstvo koje izvlačim iz Itema izgleda uvijek Null.

[CODE] Protected Sub DataListSmjestaj_ItemCreated(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataListItemEventArgs) Handles DataListSmjestaj.ItemCreated
If e.Item.ItemType = ListItemType.AlternatingItem Or e.Item.ItemType = ListItemType.Item Then
ChbEmail = CType(e.Item.FindControl("ChbEmail"), CheckBox)
AddHandler chbEmail.CheckedChanged, AddressOf chbEmail_CheckedChanged
End If
End Sub
Protected Sub ChbEmail_CheckedChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ChbEmail.CheckedChanged
Dim chb As CheckBox = CType(sender, CheckBox)
Dim item As DataListItem = DirectCast(chb.NamingContainer, DataListItem)
If chb.Checked Then
j = j + 1
' evo ovdje stane i javi grešku [B]System.NullReferenceException: Object reference not set to an instance of an object[/B].
email(j) = DirectCast(DataListSmjestaj.Items(item.ItemIndex).FindControl("ChbEmail"), CheckBox).Text
vlasnik(j) = DirectCast(DataListSmjestaj.Items(item.ItemIndex).FindControl("VlasnikLabel"), Label).Text
id(j) = DirectCast(DataListSmjestaj.Items(item.ItemIndex).FindControl("IDLabel"), Label).Text
Else[/CODE]