protected virtual void OnItemCreated(RepeaterItemEventArgs e) { if(e.Item.DataItem != null && (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)) { var listItem = (ListItemBase)ControlFinder.Instance.FindFirstControlOnType(e.Item, typeof(ListItemBase)); ListItemEventArgs eventArgs; var itemIndex = visibleItems; visibleItems++; if(listItem != null) { listItem.ListItem = e.Item.DataItem; listItem.ListingObject = this; listItem.RepeaterItem = e.Item; if(e.Item.ItemType == ListItemType.AlternatingItem) { listItem.AlternatingItem = true; } listItem.ItemIndex = itemIndex; eventArgs = new ListItemEventArgs(listItem); OnListItemDataBinding(eventArgs); listItemCollection.Add(listItem); } else { eventArgs = new ListItemEventArgs(e.Item.DataItem, this, e.Item, itemIndex); } var eventHandler = base.Events[EventItemCreated] as ListItemEventHandler; if(eventHandler != null) { eventHandler(this, eventArgs); } } }
protected virtual void OnListItemDataBinding(ListItemEventArgs e) { var eventHandler = base.Events[EventListItemDataBinding] as ListItemEventHandler; if(eventHandler != null) { eventHandler(this, e); } }