Fix cross-thread issue copying extractors #11

Closed
opened 2014-01-04 12:02:18 +00:00 by lewismoten · 0 comments
lewismoten commented 2014-01-04 12:02:18 +00:00 (Migrated from github.com)

Given at least one extractor exists
When starting to exctract
Then exception is thrown.

System.InvalidOperationException was unhandled by user code
HResult=-2146233079
Message=Cross-thread operation not valid: Control 'listView1' accessed from a thread other than the thread it was created on.
Source=System.Windows.Forms
StackTrace:
at System.Windows.Forms.Control.get_Handle()
at System.Windows.Forms.ListView.ListViewNativeItemCollection.DisplayIndexToID(Int32 displayIndex)
at System.Windows.Forms.ListView.ListViewNativeItemCollection.get_Item(Int32 displayIndex)
at System.Windows.Forms.ListView.ListViewNativeItemCollection.CopyTo(Array dest, Int32 index)
at System.Windows.Forms.ListView.ListViewNativeItemCollection.GetEnumerator()
at System.Windows.Forms.ListView.ListViewItemCollection.GetEnumerator()
at System.Linq.Enumerable.d__b11.MoveNext() at System.Linq.Enumerable.WhereSelectEnumerableIterator2.MoveNext()
at System.Linq.Enumerable.d__b11.MoveNext() at System.Linq.Enumerable.WhereSelectEnumerableIterator2.MoveNext()
at System.Linq.Enumerable.d__b11.MoveNext() at System.Collections.Generic.List1.InsertRange(Int32 index, IEnumerable1 collection) at System.Collections.Generic.List1.AddRange(IEnumerable1 collection) at LewisMoten.Spiders.CheerfulDrill.UI.Form1.Shake(IProgress1 progress, IEnumerable`1 extractors) in c:\Users\Lewis Moten\Documents\GitHub\CheerfulDrill\LewisMoten.Spiders.CheerfulDrill.UI\Form1.cs:line 88
at LewisMoten.Spiders.CheerfulDrill.UI.Form1.<>c__DisplayClass1.b__0() in c:\Users\Lewis Moten\Documents\GitHub\CheerfulDrill\LewisMoten.Spiders.CheerfulDrill.UI\Form1.cs:line 76
at System.Threading.Tasks.Task.InnerInvoke()
at System.Threading.Tasks.Task.Execute()
InnerException:

Given at least one extractor exists When starting to exctract Then exception is thrown. System.InvalidOperationException was unhandled by user code HResult=-2146233079 Message=Cross-thread operation not valid: Control 'listView1' accessed from a thread other than the thread it was created on. Source=System.Windows.Forms StackTrace: at System.Windows.Forms.Control.get_Handle() at System.Windows.Forms.ListView.ListViewNativeItemCollection.DisplayIndexToID(Int32 displayIndex) at System.Windows.Forms.ListView.ListViewNativeItemCollection.get_Item(Int32 displayIndex) at System.Windows.Forms.ListView.ListViewNativeItemCollection.CopyTo(Array dest, Int32 index) at System.Windows.Forms.ListView.ListViewNativeItemCollection.GetEnumerator() at System.Windows.Forms.ListView.ListViewItemCollection.GetEnumerator() at System.Linq.Enumerable.<CastIterator>d__b1`1.MoveNext() at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext() at System.Linq.Enumerable.<CastIterator>d__b1`1.MoveNext() at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext() at System.Linq.Enumerable.<CastIterator>d__b1`1.MoveNext() at System.Collections.Generic.List`1.InsertRange(Int32 index, IEnumerable`1 collection) at System.Collections.Generic.List`1.AddRange(IEnumerable`1 collection) at LewisMoten.Spiders.CheerfulDrill.UI.Form1.Shake(IProgress`1 progress, IEnumerable`1 extractors) in c:\Users\Lewis Moten\Documents\GitHub\CheerfulDrill\LewisMoten.Spiders.CheerfulDrill.UI\Form1.cs:line 88 at LewisMoten.Spiders.CheerfulDrill.UI.Form1.<>c__DisplayClass1.<StartButtonClick>b__0() in c:\Users\Lewis Moten\Documents\GitHub\CheerfulDrill\LewisMoten.Spiders.CheerfulDrill.UI\Form1.cs:line 76 at System.Threading.Tasks.Task.InnerInvoke() at System.Threading.Tasks.Task.Execute() InnerException:
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
lewismoten/CheerfulDrill#11
No description provided.