@@ -49,6 +49,8 @@ public partial class PvsPage : BaseTabPage
4949 private SelectionManager disableSelectionManager ;
5050
5151 private DataGridViewVms_DefaultSort vmDefaultSort ;
52+
53+ private readonly CollectionChangeEventHandler PvsProxy_CollectionChangedWithInvoke ;
5254
5355 public PvsPage ( )
5456 {
@@ -61,7 +63,9 @@ public PvsPage()
6163 disableSelectionManager = new SelectionManager ( ) ;
6264
6365 vmDefaultSort = new DataGridViewVms_DefaultSort ( ) ;
64-
66+
67+ PvsProxy_CollectionChangedWithInvoke = Program . ProgramInvokeHandler ( PvsProxyCollectionChanged ) ;
68+
6569 base . Text = Messages . PVS_TAB_TITLE ;
6670 }
6771
@@ -75,16 +79,16 @@ public IXenConnection Connection
7579 {
7680 if ( connection != null )
7781 {
78- connection . Cache . DeregisterCollectionChanged < PVS_proxy > ( PvsProxyCollectionChanged ) ;
79- connection . Cache . DeregisterCollectionChanged < VM > ( PvsProxyCollectionChanged ) ;
82+ connection . Cache . DeregisterCollectionChanged < PVS_proxy > ( PvsProxy_CollectionChangedWithInvoke ) ;
83+ connection . Cache . DeregisterCollectionChanged < VM > ( PvsProxy_CollectionChangedWithInvoke ) ;
8084 }
8185
8286 connection = value ;
8387
8488 if ( connection != null )
8589 {
86- connection . Cache . RegisterCollectionChanged < PVS_proxy > ( PvsProxyCollectionChanged ) ;
87- connection . Cache . RegisterCollectionChanged < VM > ( PvsProxyCollectionChanged ) ;
90+ connection . Cache . RegisterCollectionChanged < PVS_proxy > ( PvsProxy_CollectionChangedWithInvoke ) ;
91+ connection . Cache . RegisterCollectionChanged < VM > ( PvsProxy_CollectionChangedWithInvoke ) ;
8892 }
8993
9094 LoadVMs ( ) ;
@@ -283,7 +287,7 @@ void dataGridViewVms_SortCompare(object sender, DataGridViewSortCompareEventArgs
283287
284288 private void PvsProxyCollectionChanged ( object sender , CollectionChangeEventArgs e )
285289 {
286- Program . Invoke ( this , LoadVMs ) ;
290+ LoadVMs ( ) ;
287291 }
288292
289293 private void VmPropertyChanged ( object sender , PropertyChangedEventArgs e )
0 commit comments