On every page hit, the controls have to be created. Initially, the repeater has no internal data so it doesn't do anything. Once you have databound some data to it, it can create its repeating items. On a postback page hit, the repeater rebuild itself at the beginning of the page lifecycle. When it does this, it raises the ItemCreated event for each item. When you bind to the control, it also raises the ItemDataBound event for each item (ItemCreated first, then ItemDataBound).