예제 #1
0
		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);
				}
			}
		}
예제 #2
0
		protected virtual void OnListItemDataBinding(ListItemEventArgs e) {
			var eventHandler = base.Events[EventListItemDataBinding] as ListItemEventHandler;
			if(eventHandler != null) {
				eventHandler(this, e);
			}
		}