/// <summary> /// Create an AccordionPane's item (either Header or Content) and raise the ItemCreated event /// </summary> /// <param name="dataItem">Item's data</param> /// <param name="index">Index</param> /// <param name="itemType">Type of the item (Header or Content)</param> /// <param name="container">Control to fill</param> /// <param name="template">Template for the binding</param> /// <param name="dataBind">Whether or not to bind</param> private void CreateItem(object dataItem, int index, AccordionItemType itemType, AccordionContentPanel container, ITemplate template, bool dataBind) { if (template == null) return; AccordionItemEventArgs itemArgs = new AccordionItemEventArgs(container, itemType); OnItemCreated(itemArgs); container.SetDataItemProperties(dataItem, index, itemType); template.InstantiateIn(container); if (dataBind) { container.DataBind(); OnItemDataBound(itemArgs); } }