private void EditHandler(object parameter)
        {
            if (SelectedSystemReference != null)
            {

                SystemReference clone = new SystemReference
                {
                    //in case user cancels out...
                    FundingType = SelectedSystemReference.FundingType,
                    SystemReferenceType = SelectedSystemReference.SystemReferenceType,
                    Number = SelectedSystemReference.Number,
                    Description = SelectedSystemReference.Description,
                    EstValue = SelectedSystemReference.EstValue
                };

                List<LightSystemReference> systemReferences = (from x in SystemReferences
                                                               where x.Id == 0
                                                               select new LightSystemReference
                                                               {
                                                                   Id = 0,
                                                                   Number = x.Number,
                                                                   SystemReferenceTypeId = x.SystemReferenceTypeId
                                                               }).ToList();

                AddEditSystemReferenceDialog dialog = new AddEditSystemReferenceDialog(SelectedSystemReference, systemReferences);
                dialog.Show();
                dialog.Closed += (e, s) =>
                    {
                        if (dialog.DialogResult.HasValue && dialog.DialogResult.Value)
                        {
                            Utils.OnCollectionChanged(EventAggregator, mIssue, PROPERTYNAME, true);
                        }
                        else
                        {
                            //reverse out changes
                            SelectedSystemReference.SystemReferenceType = clone.SystemReferenceType;
                            SelectedSystemReference.FundingType = clone.FundingType;
                            SelectedSystemReference.Number = clone.Number;
                            SelectedSystemReference.Description = clone.Description;
                            SelectedSystemReference.EstValue = clone.EstValue;
                        }
                        RaisePropertyChanged("SystemReferences");

                    };
            }
        }
        private void AddHandler(object parameter)
        {
            List<LightSystemReference> inMemorySystemRefs = (from x in SystemReferences
                                                             where x.Id == 0
                                                             select new LightSystemReference
                                                             {
                                                                 Id = 0,
                                                                 Number = x.Number,
                                                                 SystemReferenceTypeId = x.SystemReferenceTypeId
                                                             }
                                                               ).ToList();

            AddEditSystemReferenceDialog dialog = new AddEditSystemReferenceDialog(mIssue.Id, inMemorySystemRefs);
            dialog.Show();

            dialog.Closed += (e, s)
                             =>
                {
                    if (dialog.DialogResult.HasValue && dialog.DialogResult.Value)
                    {
                        mIssue.SystemReferences.Add(dialog.SystemReference);
                        RaisePropertyChanged("SystemReferences");
                        RaiseChangeEvent();
                    }
                    else if (dialog.DialogResult.HasValue && !dialog.DialogResult.Value)
                    {

                    }
                };
        }