For the Invoke call, you should be able to just ignore most the arguments and write something like listview.invoke( delegate Object(Object[]) { listview.Add(whatever); return null; }); and it should work.