C# While loop

Hi,
Please see below code,
           int Results = 0;
           while (true)
           {
               Results = CheckFileCreate();
               if (Results == 1)
               {
                   break;
               }
           
           }

Open in new window

This code is working fine,But i need to show message for customer wait for finding file. after find its need to need to say found it. ANy idea greatly appriciate.thx
LVL 10
ukerandiAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

dustockCommented:
In your if statement for results == 1 add

               if (Results == 1)
               {
                   MessageBox.Show("Found file");
                   break;
               }

Open in new window

0
Mike EghtebasDatabase and Application DeveloperCommented:
int Results = 0;
           while ( Results == 0)
           {
               Results = CheckFileCreate();      
            // when Results changes to 1, loop is terminated.  
           }
0
ukerandiAuthor Commented:
I just simple message show to wait
How to do that
0
Starting with Angular 5

Learn the essential features and functions of the popular JavaScript framework for building mobile, desktop and web applications.

Mike EghtebasDatabase and Application DeveloperCommented:
MessageBox.Show("Now it is starting the While Loop");
int Results = 0;
           while ( Results == 0)
           {
               Results = CheckFileCreate();       
            // when Results changes to 1, loop is terminated.   
           }
MessageBox.Show("Finished the While Loop");

Open in new window

0
ukerandiAuthor Commented:
i try using this(MessageBox.Show("Wait...."); but its waiting for user click on OK button,
I don't want to allow to user to click any button,
JUST want to show to client , wait until this process finish.
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Mike EghtebasDatabase and Application DeveloperCommented:
Add a label control named lblMessage where you want your message to be displayed. and revise the code as shown below:
int Results = 0;
           while ( Results == 0)
           {
               Results = CheckFileCreate();       
            // when Results changes to 1, loop is terminated.  
           lblMessage.Text = "Wait..."; 
           }
// optionally include this message box:
MessageBox.Show("Process is completed.");
lblMessage.Text = "";

Open in new window

0
ukerandiAuthor Commented:
This is happening form is loading
0
Mike EghtebasDatabase and Application DeveloperCommented:
Use it there in that case.
0
ukerandiAuthor Commented:
But its not working if you use message box user needs to click on, I need to without users involved show message
please wait.
if I use lblMessage.Text = "Wait...";
in the form load event its not display,becuase its load event, it will display after the form load

So any better idea
0
Mike EghtebasDatabase and Application DeveloperCommented:
int Results = 0;
           while ( Results == 0)
           {
               Results = CheckFileCreate();      
            // when Results changes to 1, loop is terminated.  
           lblMessage.Text = "Wait...";
            this.Refresh();
           }
// optionally include this message box:
MessageBox.Show("Process is completed.");
lblMessage.Text = "";
this.Refresh();
0
ukerandiAuthor Commented:
no its not display,beucase its in the FORM LOAD EVENT
Any idea appriciate.Thx
0
Mike EghtebasDatabase and Application DeveloperCommented:
This is my last input, I hope it works for you.

lblMessage.Text = "Wait...";
int Results = 0;
           while ( Results == 0)
           {
               Results = CheckFileCreate();      
            // when Results changes to 1, loop is terminated.  
           }
// optionally include this message box:
MessageBox.Show("Process is completed.");
lblMessage.Text = "";
0
dustockCommented:
It sounds like your looking for more of a splash screen.  

create a new form
set the FormBorderStyle property to None
Add a label to the form that says "Please Wait" or what ever you want it to say
Set the StartPosition to CenterScreen
Set ShowInTaskbar to False

Back in your main form
Add a using statement for threading
using System.Threading;

Open in new window


under the main method add the following code

        public void SplashScreen()
        {
            Application.Run(new Form2()); //where Form2 is the name of your splash screen form
        }

Open in new window


In the main method you'll want to create a new thread and start it to bring up your splash screen

        public Form1()
        {
            Thread t = new Thread(new ThreadStart(SplashScreen));
            t.Start();
            Thread.Sleep(5000); //set this to however long you want the splash screen up
            InitializeComponent();
            t.Abort();
        }

Open in new window


Then when your main form loads, you could put something in a label to state if the file was found our not, or a message box if you don't mind having the user click a button.
0
CodeCruiserCommented:
no its not display,beucase its in the FORM LOAD EVENT
Any idea appriciate.Thx


Have you tried moving your code to Shown event instead of load?
0
ukerandiAuthor Commented:
good
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
C#

From novice to tech pro — start learning today.