Se ti serve solo recuperare il controllo che ha scatenato l'evento, basta fare un cast del sender , che non è altro che lo stesso radiobuttonlist
protected void rbtEM_SelectedIndexChanged(object sender, EventArgs e)
{
((RadioButtonList)sender).Enabled = false;
}
Oppure, per comodità puoi "castarlo" in un controlo creato ad hoc, così non devi ripetere ogni volta il cast:
protected void rbtEM_SelectedIndexChanged(object sender, EventArgs e)
{
RadioButtonList rbl = ((RadioButtonList)sender);
rbl.Enabled = false;
}
Una volta castato (in un modo o nell'altro), ovviamnete puoi gestirti tutte le proprietà e gli eventi di un normale radiobuttonlist
Se invece vuoi anche recuperare l'indice della riga della gridview modificata, è un po' più complesso. Io di solito risalgo al Parent, ma il radiobuttonlist è un controllo figlio di altri 3 controlli. Comunque, si può fare facilmente.
Saluti,
PV