void DoItem (int i, ListItemType t, object d, bool databind)
{
RepeaterItem itm = CreateItem (i, t);
if (t == ListItemType.Item || t == ListItemType.AlternatingItem)
items.Add (itm);
itm.DataItem = d;
RepeaterItemEventArgs e = new RepeaterItemEventArgs (itm);
InitializeItem (itm);
//
// It is very important that this be called *before* data
// binding. Otherwise, we won't save our state in the viewstate.
//
Controls.Add (itm);
OnItemCreated (e);
if (databind) {
itm.DataBind ();
OnItemDataBound (e);
}
}