A very simple approach :
On the button you can have two properties :
1. commandArgument //commandArgumsnt=<%#Eval("ID")%>
2. commandName //commandName="Edit"
Now, at the RowCommand event of the repeater, you can check if e.CommandName="Edit"
Now, on opening the model-up, you can fill the textboxes by fetching the data from database using this id, and update it too.
Note: I have written all the code without checking, so I may contain syntactical mistakes as this was top on my head.
Hope this would solve your problem. Feel free to ask for any issue.