Michael
I've tried to do a similar thing in the past, and using the Url control from DNN isn't really the best way to go. You'll find it easier to roll your own custom control in a repeater : thus leaving out some of the baggage of the url/link control. When you roll your own, you can do better things with the code, and you'll probably get it done quicker than trying to reverse hack the url list control into a repeater.
I would suggest you actualy use a DataList control instead of a repeater, so you have to choose which record to edit. Doing it this way will speed your load time up a lot, because otherwise you'll be creating a drop down list of pages in a portal x number of rows on the screen : and quickly end up with a huge page size (in terms of bytes) which will slow things down immensefly with any postbacks backwards and forwards (ie 200k worth of data backwards and forward to the server for each postback). I don't know if this is for a specific site or for use as a distributable module, but if you're planning to use this code on sites that haven't been developed yet (ie, you don't know how big they will be) then you could find the page unusable in terms of performance for sites with larger numbers of tabs. This may not be a problem, though, if you know it's only going to be used on a site with 10 pages.
I've been doing a lot of work in this space recently with paged tab lists which also work like the user list in DNN : clicking on a letter to get the related tabs. This is more user friendly than a large drop down which quickly becomes unwieldy. It also makes the page a lot faster and easier to use. Drop downs are a pain once they get past about 10 entries.
My other piece of advice, if you're sticking with a repeater control, is to ditch the databainder.eval statements and just hook up to the itemdatabound event, and do the relevant binding of controls in there instead. This stops the spread of your code logic from the code-behind page to the presentation layer, and makes it trivial to do more complicated binding like determining if something is to be a link or a drop-down list of pages. It's also faster because the databinder.eval statement is completely late-bound.
Good luck with it and don't forget that some DNN sites run over a thousand pages.