void ViewModel_EventOpenItemDialog(ItemType itemType) { if (itemType == ItemType.ServiceCall) { ServiceCallInfoPopup scip = new ServiceCallInfoPopup(); scip.ShowDialog(); } }
void ViewModel_EventOpenItemDialog(ItemType itemType) { if (itemType == ItemType.ServiceCall) { ServiceCallInfoPopup scip = new ServiceCallInfoPopup(); scip.ShowDialog(); } else if (itemType == ItemType.Correspondence) { CorrespondenceInfoPopup cip = new CorrespondenceInfoPopup(); cip.ShowDialog(); } else if (itemType == ItemType.LedgerRecord) { LedgerRecordInfoPopup lrip = new LedgerRecordInfoPopup(); lrip.ShowDialog(); } }
void ViewModel_EventOpenItemDialog(ItemType itemType) { Window aWindow = null; var invokeMethods = new Action[] { //delegate { ViewModel.WorkingContainer = ViewModel.WorkingProperty; aWindow = new PropertyEditorWindow(); }, //delegate { ViewModel.WorkingContainer = ViewModel.WorkingTenant; aWindow = new TenantEditorWindow(); }, //delegate { ViewModel.WorkingContainer = ViewModel.WorkingOwner; aWindow = new OwnerEditorWindow(); }, //delegate { ViewModel.WorkingContainer = ViewModel.WorkingHOA; aWindow = new HOAEditorWindow(); }, //delegate { ViewModel.WorkingContainer = ViewModel.WorkingVendor; aWindow = new VendorEditorWindow(); }, //delegate { ViewModel.WorkingContainer = ViewModel.WorkingPropertyMgmtCompany; aWindow = new PropertyMgmtEditorWindow(); }, //delegate { ViewModel.WorkingContainer = null; aWindow = new ServiceCallInfoPopup(); }, //delegate { /* Contacts should never open from here */ }, //delegate { /* Correspondences should never open from here */ } delegate { aWindow = new PropertyEditorWindow(); }, delegate { aWindow = new TenantEditorWindow(); }, delegate { aWindow = new OwnerEditorWindow(); }, delegate { aWindow = new HOAEditorWindow(); }, delegate { aWindow = new VendorEditorWindow(); }, delegate { aWindow = new PropertyMgmtEditorWindow(); }, delegate { aWindow = new ServiceCallInfoPopup(); }, delegate { /* Contacts should never open from here */ }, delegate { /* Correspondences should never open from here */ }, delegate { /* Ledgers should never be open from here */ } }; invokeMethods[(int)itemType](); if (aWindow != null) { // Safeguard to not open extra contact/service call windows if ((ViewModel.WorkingContainer == null && itemType == ItemType.ServiceCall) || // Service call from main window (ViewModel.WorkingContainer != null && itemType < ItemType.ServiceCall)) // "Proper" item type from main window { aWindow.ShowDialog(); } } }