Tracking Forums, Newsgroups, Maling Lists
Home Scripts Tutorials Tracker Forums
  Advanced Search
  HOME    TRACKER    vbnet


.net - BackGroundWorker RunWorkerCompleted Event Not Called Sometimes?

I'm seeing some strange behavior where the RunWorkerCompleted event for one of two threads I start isn't being called depending on how I call them. Check out the code below, and the two methods of firing the threads, good() and bad().


In both cases the DoWork event is called for both threads. But in the bad() case, only the second thread fires the RunWorkerCompleted event. This is obviously due to the two different ways I'm using VB to handle events here. I'm looking for an explanation of this behavior, preferably with a link to some documentation that could help me understand how these events are being handled in VB better. It seems strange to me that just reusing a variable name here seems to either dispose of the thread before it's done or else just make it stop firing events.

View 1 Replies (Posted: Feb 1 at 22:50)

Sponsored Links:

Related Forum Messages For vbnet category:
BackGroundWorker Passing Argument In RunWorkerCompleted Event?
my current solution as you can see is by using shared variable within a class in order to pass a value.

on the form load of my application i called: workerSample.RunWorkerAsync

Dim finalList As List(Of String)
Private Sub workerSample_DoWork(ByVal sender As System.Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles workerSample.DoWork


Posted: Jan 15 at 8:59

View 1 Replies!   View Related
BackgroundWorker - Get Two Different RunWorkerCompleted?
I used sample from jmcilhinney at Link to create background proces and it works like a charm. But. In my menu i have two (2) different toolstrip buttons which i need to run the same BackgroundWorker1_DoWork method, but different ackgroundWorker1_RunWorkerCompleted methods. Is that doable?

1. In BackgroundWorker1_DoWork method i use some time-consuming operation which at end sets two global variables.

2. In BackgroundWorker1_RunWorkerCompleted method I use some Select case statment based on that two global variables that are not the same for ToolstripButton1 and ToolstripButton2.
Private Sub FirstButtonToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles FirstButtonToolStripMenuItem.Click


Posted: Jun 26th, 2009

View 4 Replies!   View Related
Make Sure 'ProgressChanged' Event Executes Completely Before Executing 'RunWorkerCompleted' Event Of Background Worker
Starting from my understanding about Background worker control, I understands that the background worker runs the code in its "DoWork" method in a seperate thread, while ProgressChanged and RunWorkerCompleted events are executed on the main thread.In my senerio, I report the progress and under an specail conditionmy applicationdisplays a message box to the user in "ProgressChanged" method using MessageBox.Show(). and in "Run Worker Completed" event the application finalize some work. There the sequence is important, suppose that the message is of Yes or No type and finalization depends on it. Now when i run my application, the background worker triggers "ProgressChanged", but as soon as backgroundWorker's cancelAsync() is called the program leaves the current "ProgressChanged" method and executes "RunWorkerCompleted" code first.How can i make sure that the "Run Worker Completed" code executes only after the completion of ProgressChanged method.

Posted: September 20, 2010

View 9 Replies!   View Related
.net - Why Isn't BackgroundWorker.OnDoWork Getting Called
I have a job object for long running operations that works like this:


This worked fine a year ago, and I moved on to other things. I had to return to this code today, and when I run it now, the OnDoWork override is simply not called. A breakpoint in there isn't hit, debugging messages aren't written, the method is simply not called, and no errors are thrown anywhere. I can't think what would have changed that could cause this, since it seems like a low level framework thing. The rest of the app loads and runs fine, the main window shows (it's a WPF app), and button click events fire. It's just the background thread method that doesn't fire. What could be going on here?

Posted: Apr 10 at 23:32

View 2 Replies!   View Related
VS 2010 'Public Event OnFilterAdded()' Is An Event, And Cannot Be Called Directly
what is the error in the bleow: 'Public Event OnFilterAdded()' is an event, and cannot be called directly. Use a 'RaiseEvent' statement to raise an event. Note: the error line is italic underline

Imports System
Imports System.Collections
Imports System.Configuration


Posted: Dec 25th, 2011

View 3 Replies!   View Related
.net - Event Handler Is Never Called Because The Original Event Is Raised In Another Event Handler?
The event handlers in my parent class are never called though the events are raised in the child class.

The Code:

Public Class childForm
Public Event checkboxchangedEvent(ByVal checkbox1 As Boolean, ByVal checkbox2 As Boolean)
Private Sub checkboxchanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox1.CheckedChanged, CheckBox2.CheckedChanged


Posted: Apr 18 11 at 19:25

View 2 Replies!   View Related
Backgroundworker And Objects That Have Event Handlers
I've started working with the backgroundworker class to try and keep the UI responsive while I make some expensive API calls. One of the API classes (details here[]) has its own event handler which I am using to update a progress bar in a small form that pops up. So I'm looking to use the PublishPackage command in a bgw thread and update a progress bar on the UI thread by using the ProgressHandler method.


Posted: Feb 9th, 2012

View 5 Replies!   View Related
Possible To Update UI From BackgroundWorker DoWork Event?
I have seen others with a similar issue but not quite what I was looking for. In the backgrounderworker class dowork event I create an instance of a new class and call one of it's function. Previously, I had this code in a windows.form.timer tick event and would pass a delegate in as one of the parameters which would allow the function and other functions it calls within the class to call a method on the form to update a datagrid on the GUI. Is there a way to do this within the dowork event? I need this because the function I call from dowork calls other functions and I want each of those functions to log information in the GUI datagrid.

Posted: Sep 22 10 at 20:29

View 3 Replies!   View Related
Trigger Backgroundworker Completed Event?
I am trying to display the progress bar(marque) in a separate form (progressForm) while i do some calculation in background. I know the typical way of doing it is to include the calculation in background worker and show progressForm in main thread. This approach how ever will lead to lot of synch issues in my application hence I am showing the progressForm using progressForm.ShowDialog() inside the background worker process. But I need to trigger the Completed event with in the application to close the form.

Posted: Jun 17 10 at 19:30

View 1 Replies!   View Related
BackgroundWorker - Spawn Dialog While Log Event Occur
I am trying to create a background worker that will spawn a dialog, while a long event is occurring. For example, when the main thread in trying to connect connect to a db and update a large amount of records, I would like to have the background worker spawn a dialog that advises the user to "Please Wait"

Here is what I have so far
1. I create a background worker using the drag and drop
2. Before the event that taking a long time starts I call:
BackgroundWorker1.WorkerReportsProgress = True
3. This is the events for the bgworker, all of which was enabled in the form designer:

Private Delegate Sub delCreateNewForm()
Private Sub BackgroundWorker1_DoWork(ByVal sender As System.Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker1.DoWork
Dim d As New delCreateNewForm(AddressOf CreateNewForm)
[Code] .....

4. When the long activity is completed I call this:
Everything seems to work fine, except that the newly spawned dialog in no responsive and appears to be frozen, until its closed by the Progress Changed event.

Posted: Apr 10th, 2010

View 6 Replies!   View Related
Event Handler Is Not Getting Called After Click?
What is an "EASI" LinkButton? Why don't you just use an ASP.NET LinkButton? Try modifying your JavaScript method so that it returns "true" if you want the postback to occur...and "false" if you want it to stop. Then change the LinkButton to so that it "returns" the value that is returned by the JavaScript method... This should stop the postback from occurring (but then again I've nevers een an EASI LinkButton before.......)

<EASI:LinkButtonID="btnSearch" runat="server"CausesValidation="False" ClientScript="returnconfirmSearchOK();"UseSecurityLevel="True">Search</EASI:LinkButton> JavaScript modification suggestion:
functionconfirmSearchOK(){ varplanSel=document.getElementById("<%=ddlPlanID.ClientID%>").selectedIndex;
[Code] .....

Posted: Oct 12 10

View 1 Replies!   View Related
Form's Load Event Not Called?
I was having a problem with the debugger not stopping at breakpoints. After a lot of work that yielded no results, I realized that the problem was occuring in the form's load event and subs called from that event.

The problem is that it appears that the load event is not being called. Other startupforms in other projects in the solution seem to be working ok.

what could be keeping the the Load event from working?

Posted: April 25, 2011

View 1 Replies!   View Related
Forms :: Event Called On Load
I got a combobox, that when the texted is changed, its supposed to run a query to update a field in my database. Here is the issue The event im using is TextChanged, well unfortunately when the page loads, it changes the text when populating the values. Is there a way to make this event wait to fire until after the list is populated? Ive ran into this problem before with datetimepickers, but I was able to offset it with a boolean, but this combobox is calling the textchanged event everytime it adds an item to the list.

Posted: 01-13-2010

View 1 Replies!   View Related
Why Vb Is Called Event Driven Programming
event driven programming

Posted: February 09, 2010

View 1 Replies!   View Related
In Outlook 2010, ComboBox_AfterUpdate() Event Never Called?
so here's what happeningServer: Exchange 2010Client: Outlook 2010I've developed a custom form for Outlook the form, I've added 2 fields:- ComboBox1 with the following values: value1 ; value2 ; value3- textBox1What I need is if someone change the value of ComboBox1, the TextBox1 will be populated with "You've chosen the value_of_ComboBox1".but I can't make the event to pick up!The msgbox never called.

Case "value2"
Case "value3"


Posted: September 20, 2011

View 3 Replies!   View Related
Timer Event Is Not Generated When C Dll Function Is Called
Net_mang_Form.Prg_bar.Visible = True
Net_mang_Form.Prg_bar.Value = 0


Here Net_mang_Form is Form1 and this code is written in button click event of Form2.

file_send is the function of dll .

prg_Timer is the timer control .

Prg_bar is Progress bar control.

Posted: May 14 at 11:03

View 2 Replies!   View Related
Background Worker RunWorkerCompleted?
I have a background worker that used to fire its RunworkerCompleted event when its DoWork routine finished querying a database and writing its output to a file. The bg worker was in a class called Query, which was called from another class called Trigger. A new Trigger Class was created for each monitored event. In this class, there was a structure which stored the config of each Trigger. When this event was triggered (set to TRUE) a new query class is created and it is passed the Trigger class. When the database query, file writing was done, the query class and all its rsources were diposed from the RunWorkerCompleted EventRecently I changed the application so that a new trigger class is not created for each monitored event. There is a single instance of the class but new config structure for each event. When a particular event is trigger, jsut the config structure is passed to a new query class and the sma ething is done in the query class.I just noticed now that the RunWorkerCompleted event is not being fired anymore.

Posted: November 20, 2008

View 5 Replies!   View Related - What Event Is Called When A .ascx Control Is Set To Visible / How Can It Be Handled
If I set a .ascx control's visible attribute to true, what event is called? What method can I create in that control's codebehind to act on this event?

Posted: Jul 20 09 at 15:15

View 1 Replies!   View Related
Modify .net's BackgroundWorker Class So That It Fires A Custom Event Upon Method Completion?
I have a BackgroundWorker in a program that is doing a lengthy data import routine. I want to modify its RunWorkerAsync method so that it fires a custom event on completion of the method. (So that a method in an automated process can respond to the event and resume its work). In a sense I want to 'extend' the RunWorkerAsync method to add an extra line of code--but I can't 'see' the code in the method (to just add the line raising the event) because BackgroundWorker is an MSDN class from Microsoft.The only solution that I can think of is to 'wrap' the background worker class in a wrapper that calls the .RunWorkerAsync method and then raises the event.

Public sub wrapperMethod()
raise customEvent
end sub

Is there a design pattern that I might use? An easy way to address this with the .net language?

PS: Unfortunately, I'm automating some clanking legacy software and backgroundworker is used in many locations, so wrapping the backgroundworker will be a bit of work and may open bugs.

Posted: Nov 16 11 at 22:15

View 1 Replies!   View Related
Make The Custom Exception Thrown In BackGroundWorker DoWork Event The Error In RunWorkerCompletedEventArgs?
Let's say a custom exception is thrown in the DoWork event for a backgroundworker. How do I pass the custom exception to the backgroundworker so that it ends up being the e.Error in the RunWorkedCompletedEventArgs?

Posted: October 06, 2010

View 1 Replies!   View Related
C# - User Control Button Click Event Called Again When Page Is Refreshed Using F5
I found that if you press F5 or refress from browser window, the last event fires again
example, I have clicked on a button, the button event is carried out normally, but if I refresh the page by pressing F5 key the same event is fired again.

Posted: May 26 10 at 20:31

View 1 Replies!   View Related
Update The Button Text On A Form From A Backgroundworker.do_work Event, And It Failed With The Usual Cross-thread Exception Message?
I tried to update the button text on a form from a backgroundworker.do_work event, and it failed, with the usual cross-thread exception message.However, by pure chance, I also tried to update text in a also from this backgroundworker.do_work event, and it DOES work. Question: why is this? Is it perhaps because theres some kind of implicit shared behaviour with

Posted: Nov 14 11 at 14:20

View 4 Replies!   View Related
Cancel Backgroundworker - Got The Error Message" This BackgroundWorker Is Currently Busy And Cannot Run Multiple Tasks Concurrently?
in my button click event i ececure

If BackgroundWorker4.IsBusy Then
End If[code]....

after proceess completed if press the button again.i got the following error msg

This BackgroundWorker is currently busy and cannot run multiple tasks concurrently.

Posted: December 14, 2009

View 6 Replies!   View Related
Have A Column In The Datatable Called Amount And A Textbox Acting As The Filter Called Say Maxamount To Set It?
i was wondering if it possible to have a condition where lets say you have a column in the datatable called amount and a textbox acting as the filter called say maxamount to set it so the rowfilter when filtering the table will sum the number in the amount column until the number in maxamount is met, then stop and only return the rows where the total sum of the amount column is equal or less than the maxamount value, so i guess if the next row takes us over the maxamount it discards this row and returns the rows previous to it. is this possible using datagridview rowfilter or should i be loooking elsewhere to achieve this?

Posted: Feb 9th, 2011

View 4 Replies!   View Related
Combo - Sql Table Called Stock With Two Fields Called StockID And StockCode
I have an sql table called Stock with two fields called StockID and StockCode. I want the user to select the stockcode from a combo which in turn populates the stockid for that item into a lable on my form. I have already populated the stockcode into the combo but dont know how to compelte the rest.

Imports System.Data.SqlClient

Public Class cbo2
Private Sub cbo2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load


Posted: 2011

View 4 Replies!   View Related
Form Called FrmPracDetails Which Is Built Up With A List View Called LvwColProc
I have a form called FrmPracDetails which is built up with a List view called LvwColProc. Therefore when you click a field on the LvwColProc it takes you to another form called FrmColProcessing, here you can make changes to certain fields which are also present on FrmPracDetails. What I want to do is when you make changes on FrmColProcesing and Click the Save Button (which calls the Save function)the changes appear instantly on FrmPracDetails. Please note, FrmColProcessing will always be open next to FrmPracDetails. I have tried to put this code in the Save function present in FrmCol Processing as shown below, but it doesnt Refresh FrmPracDetails form. [code]

Posted: 08-11-2009

View 1 Replies!   View Related
Properties - Default Property Set Being Called Mysteriously Called?
I have the following line of code in my program:


This JCL_History object is basically a Generic.List encapsulated in a wrapper and has the following method:

Public Sub Enqueue(ByRef value As String)
If Members.Contains(value) Then


In my testing I have 2 items in this JCL_History list. When I call that first line of code I posted (the one that invokes Enqueue) with I = 1 I expect the first item to be shuffled to the bottom and the second item to be shuffled to the top.

After the thread returns from Enqueue I notice that this is exactly what happens to my list, HOWEVER if I hit the "step_in" button after the execution of Enqueue I go into the Default Property's set method where Index = 1 and value = and it screws everything up, because the item that got shuffled to the end (index 1) gets overwritten by the item value shuffled to the top.

So basically the set method on the default property is getting called at what I think to be a completely ridiculous time. What gives? By the way I'm running VS2005 on XP.

Posted: Apr 2 at 20:16

View 1 Replies!   View Related
Create A Custom Control With An Event Called "valuechanged"?
I have created a custom control with an event called "valuechanged" When I try the following line to: AddHandler


Posted: May 27, 2011

View 2 Replies!   View Related
Mouseevent :: Mouse.Enter And Mouse.Leave Both Called In Same Event?
In my VB.Net forms application, I have a function:

Private Sub pnlMain_MouseLeave(sender As Object, e As System.EventArgs) Handles pnlMain.MouseLeave


Posted: Jun 19 at 7:47

View 1 Replies!   View Related
C# - Find Out If The "TextChanged" Event Is Fired If User Is Typing Into A Textbox Or MyTextBox.Text Is Called Programmatically?
Is there a way to find out if the "TextChanged" event is fired because the user is typing into a textbox or the programmer called myTextBox.Text = "something"? I don't want to react when the user is typing each letter into the textbox so I am using the "Validated" event to catch when the user is done so I can react. The problem is I don't have a way to catch when the programmer does "myTextbox.Text = "something". The only way I know to catch changes there is to use TextChanged but then I don't want to be reacting when the user is typing each letter into the textbox.

Posted: Mar 9 at 15:38

View 4 Replies!   View Related
VS 2005 Event Is Lost When A Second Form Is Called From The First Form
I have two forms. Form1 and Form2. The user is supposed to fill out some information in form2 which then will be used to compute some data in form1. However when I used the code, Form2.Show, within a function in form1, the form2 is diplayed but when the user fills the data and submits them using the ok button, the code does not return back to the function in Form1.

Posted: Dec 31st, 2009

View 3 Replies!   View Related
.net - SSRS Report Called From ReportViewer Control Displays No Data In The Report When Called With A Parameter
Can you look at my coding and let me know what I'm missing or doing wrong?I have a SSRS report that is called from a ReportViewer control and the ProcessingMode for this control is Remote. The report also has 1 parameter in it's DataSet.In the code I placed a MsgBox to make sure the code is finding the parameter and returning the parameter name. I am trying to stick the value of 10 into the parameter for playerID 10. Data for this player does exist.

I believe I need to add some more code to make this work but I'm not sure what else to add.

When the code executes the report is displayed but no data is shown in the report.


Posted: Apr 11 at 20:47

View 1 Replies!   View Related
Office Automation :: Called "Freemind" That Is Called A 'mind Mapping' Program?
I recently found an awesome tool called "Freemind" that is called a 'mind mapping' program. It's similar to MS Visio but way cooler and more automated.I reeeallly would like to integrate this into a Form, but how?

Has anyone seen or heard of mind mapping inside before? Are there programs out there already that work with or anyone have an example they have seen / built that works?

Posted: 05-13-2010

View 5 Replies!   View Related
Backgroundworker Inside Another Backgroundworker?
i'm in the need to start a backgroundworker inside another one.Now...The first one BGW starts a for cycle, and inside this one there is the second BGW that has to upload an image to a server.The trouble is that, the progress event and the complete event of the internal BGW are never called.

Posted: April 02, 2012

View 11 Replies!   View Related
Copyright 2005-08, All rights reserved