Creo que mas o menos te voy entendiedo (es que ando con mucho trabajo y ando alucinando un poco.. jeje)
Me pregunto... no sería mas fácil que le pasaras el argumento a tu imagen y con ello ya saber lo que tiene...
algo así:
...
...
<asp:ImageButton Runat=server ID=referenceButton
CommandArgument='<%# Container.DataItem("
REFERENCIA")%>' ImageUrl="imagen.gif"></asp:ImageButton>
...
..
Y listo... en tu evento puedes cachar el CommandArgument...
Ahora si ??