public HomeViewModel() { try { //if (DesignerProperties.GetIsInDesignMode(new DependencyObject())) return; //Do not execute code below this line when in Designer #region "Default Values" _selectedDeveloper = DeveloperOptions.SingleOrDefault(x => x.DomainUserName.Contains(Environment.UserName)); _isDeveloperSelected = _selectedDeveloper != null; _selectedMinimumDate = DateTime.Today.AddDays(-21); _isMinimumDateSelected = true; _isLoading = true; #endregion UnclaimedResultsGridViewModel = new UnclaimedGridViewModel(); LinkObjectViewModel = new LinkObjectViewModel(); ClaimedResultsGridViewModel = new ClaimedGridViewModel(this); ManualEntryViewModel = new ManualEntryViewModel(); DatabaseItemCollectionViewModel = new DatabaseItemCollectionViewModel(); AuditLogViewModel = new AuditLogViewModel(new TrackerParameters { SelectedDeveloper = _selectedDeveloper, MinimumDateTime = _selectedMinimumDate }); GetUnclaimedTabData(); ManualEntryViewModel.LinkObjectsChanged += HandleObjectsLinked; UnclaimedResultsGridViewModel.UnclaimedObjectViewInAuditLogSelected += OpenAuditLogTabWithObject; } catch (Exception ex) { } }
private void HandleObjectsLinked(object sender, EventArgs e) { if (sender.GetType() == typeof(LinkObjectViewModel)) { LinkObjectViewModel.CloseWindow(new object()); } GetUnclaimedTabData(); }
private void OpenClaimObjectsWindow(object o) { //new viewmodel for new window LinkObjectViewModel = new LinkObjectViewModel { DatabaseObjects = new ObservableCollection <AssignableDatabaseObject>() }; //Get the objects which were marked in the unclaimed grid on the main window and add them to new vm collection UnclaimedResultsGridViewModel.UnclaimedRecords.Where(x => x.IsAssign).ForEach(y => LinkObjectViewModel.DatabaseObjects.Add(y)); //new window var linkWindow = new LinkObject { DataContext = LinkObjectViewModel }; linkWindow.Show(); LinkObjectViewModel.LinkObjectsChanged += HandleObjectsLinked; }
public void ClaimChanges(object o) { var items = GetSelectedItems(); var databaseObjects = new ObservableCollection <AssignableDatabaseObject>(); items.ForEach(i => databaseObjects.Add(new AssignableDatabaseObject(new DatabaseObject { DatabaseName = i.DatabaseName, TypeCode = i.ItemType, ObjectSchema = i.SchemaName, ObjectName = i.Name })) ); var linkViewModel = new LinkObjectViewModel { DatabaseObjects = databaseObjects }; //new window var linkWindow = new Views.LinkObject { DataContext = linkViewModel }; linkWindow.Show(); }