Solved

Disabling then reenabling a button in a confirmation box

Posted on 2011-02-11
1
442 Views
Last Modified: 2012-05-11
Hi,

I'm trying to use AJAXControlToolKit to create a confirmation box that allows a user to upload a file. There's also an "OK" and a "Cancel" button on the confirmation box. For the most part it's all working, however I need to disable the "OK" button when the upload starts then reenable it when the upload is completed because allowing the user to press "OK" during upload throws an exception. I've already looked into setting the upload to start on the "OK" button click event but due to different instances of an argument this doesn't seem like an option.

This is the what builds the box when the event is called

 
protected void cnfUpload_Actioned(object sender, ConfirmationBoxEventArgs e)
    {
        e.ButtonStyle = ConfirmationBoxButtonStyle.AcknowledgeCancelUpload;
        e.Message = "Select a WAV file to upload...";
        e.Icon = ConfirmationBoxIcons.Information;
        Session.Contents["UploadedFile"] = null;
        Session.Contents["FileName"] = null;
    }

Open in new window


This is the event where the upload takes place and where I'd like the disable and reenable the "OK" button.

 
protected void cbUpload_Uploaded(object sender, ConfirmationBoxEventArgs e)
    {
        //List View Upload - leads to edit
        ConfirmationBox cb = sender as ConfirmationBox; 
        
        byte[] bFile = new byte[e.DataStream.Length];
        e.DataStream.Read(bFile, 0, Convert.ToInt32(e.DataStream.Length));

        try
        {
            //PromptData.SetAudio(Convert.ToInt32(cb.Reference), e.Filename, bFile);

            Prompt.SetAudio(Convert.ToInt32(cb.Reference), e.Filename, AudioFile.ConvertToALaw(bFile));
            SessionManager.UploadError = false;
        }
        catch (Exception ex)
        {
            SessionManager.UploadError = true;
            diags.Error(Request, "Could not upload Temporary File", ex);
        }
    }

Open in new window


This is the code that builds the confirmation box on click of a button

<sso:ConfirmationBox ID="cbUpload" runat="server" 
                            ShowCancelButton="false"
                            ButtonStyle="AcknowledgeCancelUpload"
                            ActionButtonStyle="Image"
                            Reference='<%# Eval("ID") %>'
                            ActionButtonImage="~/Icons/16x16/ictupload.png"
                            OnActioned="cnfUpload_Actioned"
                            OnFileUploaded="cbUpload_Uploaded"
                            OnAcknowledgeClicked="cbUpload_AcknowledgeClicked"
                            OnCancelClicked="cbUpload_CancelClicked"
                            ActionImageAlt="Upload"
                         />

Open in new window


Apologies if I have not included enough information/code. But any help would be appreciated.

Many thanks.
0
Comment
Question by:Lilliman
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
1 Comment
 

Accepted Solution

by:
Lilliman earned 0 total points
ID: 34896719
It seems that there isn't an ovbious way of doing this but I have managed to get around it by using  div tags in where the confirmation box is referenced and set the button's visibility to false, then I have used a small piece of javascript to set the button's visibility back to true again  when it's needed.
0

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article is for Object-Oriented Programming (OOP) beginners. An Interface contains declarations of events, indexers, methods and/or properties. Any class which implements the Interface should provide the concrete implementation for each Inter…
The most up-to-date version of this article is on my Blog https://iconoun.com/blog/
If you're a developer or IT admin, you’re probably tasked with managing multiple websites, servers, applications, and levels of security on a daily basis. While this can be extremely time consuming, it can also be frustrating when systems aren't wor…
Michael from AdRem Software outlines event notifications and Automatic Corrective Actions in network monitoring. Automatic Corrective Actions are scripts, which can automatically run upon discovery of a certain undesirable condition in your network.…

729 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question