public void SetObjects(uint cObjects, object[] ppunk) { if (ppunk == null || cObjects == 0) { if (null != IPropertyStore) { IPropertyStore.Dispose(); IPropertyStore = null; } } else { bool needToRefresh = false; if (IPropertyStore != null) { needToRefresh = true; } IPropertyStore = GetNewPropertyStore(); IPropertyStore.Initialize(ppunk); if (needToRefresh) { MyPageView.RefreshPropertyValues(); } } }