ASP.Net haga doble clic en el problema

Tener un pequeño problema con una página ASP.net mía. Si un usuario hiciera doble clic en un botón "enviar", escribirá dos veces en la base de datos (es decir, llevará a cabo el método 'onclick' en el botón de imagen dos veces)

¿Cómo puedo hacer que, si un usuario hace clic en el botón de imagen, solo se deshabilita el botón de imagen?

He intentado:

<asp:ImageButton 
     runat="server" 
     ID="VerifyStepContinue" 
     ImageUrl=image src 
     ToolTip="Go" 
     TabIndex="98" 
     CausesValidation="true" 
     OnClick="methodName" 
     OnClientClick="this.disabled = true;" />

¡Pero esta propiedad OnClientClick detiene completamente el envío de la página! ¿Alguna ayuda?

Lo siento, sí, tengo controles de validación ... de ahí el problema.

Trabajando en esto todavía, hasta este punto ahora:

Código ASP:

 <asp:TextBox ID="hidToken" runat="server" Visible="False" Enabled="False"></asp:TextBox>
 ...
 <asp:ImageButton runat="server" ID="InputStepContinue" Name="InputStepContinue" ImageUrl="imagesrc" ToolTip="Go" TabIndex="98" CausesValidation="true" OnClick="SubmitMethod" OnClientClick="document.getElementById('InputStepContinue').style.visibility='hidden';" />

Código C #:

         private Random
    random = new Random();


    protected void Page_Load(object sender, EventArgs e)
    {
        //Use a Token to make sure it has only been clicked once.
        if (Page.IsPostBack)
        {
            if (double.Parse(hidToken.Text) == ((double)Session["NextToken"]))
            {
                InputMethod();
            }
            else
            {
                // double click
            }
        }

        double next = random.Next();

        hidToken.Text = next + "";
        Session["NextToken"] = next;

En realidad ... esto casi funciona. El problema del doble clic está bastante solucionado (¡yay!) La imagen aún no está oculta.

Respuestas a la pregunta(6)

Su respuesta a la pregunta