He logrado una solución, la pongo por si alguien le sirve es:
string Valor = ((Label)row.Cells[0].FindControl("IdDatos")).Text;
Quedaría así en el código
Código:
protected void imageButtonCilck(object sender, EventArgs e)
{
ImageButton imageButton = (ImageButton)sender;
TableCell tableCell = (TableCell)imageButton.Parent;
GridViewRow row = (GridViewRow)tableCell.Parent;
GvQuinielasUsuario.SelectedIndex = row.RowIndex;
int fila = row.RowIndex;
string Valor = ((Label)row.Cells[IdDatos].FindControl("IdDatos")).Text;
}
Pero hay una cosa que no entiendo y es porque me vale igual que ponga 1 que 0??? en teoría si pongo cero solo me cogera la primera columna... pero la coge bien porque se la indico en FindControl,...
string Valor = ((Label)row.Cells[0].FindControl("IdDatos")).Text;
string Valor = ((Label)row.Cells[1].FindControl("IdDatos")).Text;
no hay quien lo entienda, pero bueno me lo hace bien de un modo u otro que es lo que cuenta, si hay alguien que me responda esto, guay, sino pues hastalue