private void CreateItem(object current, int i, bool doDatabind) { // create item RepeaterItem item = new RepeaterItem(i, current); InvisibleItem invItem = new InvisibleItem(i, current); // get the id of the last created item int lastId = -1; if (Controls.Count > 0) { lastId = Iterator.GetIntegerId(Controls[Controls.Count - 1].ID); } // initialize item from template ItemTemplate.InstantiateIn(item); InvisibleTemplate.InstantiateIn(invItem); // set the ids appropriately item.ID = Iterator.FormatId(lastId + 1); invItem.ID = Iterator.FormatId(lastId + 2); // add item to the child controls collection Controls.Add(item); Controls.Add(invItem); if (doDatabind) { item.DataBind(); invItem.DataBind(); } }
public void RefreshItem(int dataItemIndex) { // set the datasource position IOSList rl = DataSource; rl.SetPosition(dataItemIndex); SelectedIndex = dataItemIndex; // databind the correspondent item int controlIndex = GetItemControlIndex(dataItemIndex); RepeaterItem item = (RepeaterItem)Controls[controlIndex]; item.DataItem = rl.Current; item.DataBind(); InvisibleItem invItem = (InvisibleItem)Controls[controlIndex + 1]; invItem.DataItem = rl.Current; invItem.DataBind(); }