private void SetUidToNotFoundItem(AddressModel globalAddress)
        {
            var adr = SelectedNotFoundItem;

            adr.Number      = globalAddress.Number;
            adr.KgiopStatus = globalAddress.KgiopStatus;
            adr.Uid         = globalAddress.Uid;
            NotFoundItems.Refresh();

            _eventAggregator.GetEvent <PubSubEvent <AddressModel> >().Publish(adr);
        }
        public AddressToAddressViewModel(Repository repository, IEventAggregator eventAggregator)
        {
            _repository       = repository;
            _eventAggregator  = eventAggregator;
            _excelApplication = (Application)ExcelDnaUtil.Application;

            createGlobalAddressesView();

            (this as INotifyPropertyChanged).PropertyChanged += (obj, args) =>
            {
                if (args.PropertyName == nameof(FindText))
                {
                    Items?.Refresh();
                }
                else if (args.PropertyName == nameof(SelectedNotFoundItem) && SelectedNotFoundItem != null)
                {
                    FindText = getFindText(SelectedNotFoundItem.Address);
                }
            };

            (repository as INotifyPropertyChanged).PropertyChanged += (sender, args) =>
            {
                if (args.PropertyName == "AddressList")
                {
                    createGlobalAddressesView();
                }
            };

            _eventAggregator.GetEvent <PubSubEvent <AddressModel> >().Subscribe(adr =>
            {
                var findAdr = adr.Address.Replace(" ", "");
                var findDst = adr.District.Replace(" ", "");
                var list    = (NotFoundItems.SourceCollection as IEnumerable <AddressModel>);

                var curAdr = list.Where(i => i.Number == 0).FirstOrDefault(it => it.Address.Replace(" ", "") == findAdr & it.District.Replace(" ", "") == findDst);
                if (curAdr != null)
                {
                    curAdr.Number      = adr.Number;
                    curAdr.KgiopStatus = adr.KgiopStatus;
                    curAdr.Uid         = adr.Uid;
                    NotFoundItems.Refresh();

                    SelectedNotFoundItem = list.Where(i => i.Number == 0).FirstOrDefault();
                }
            });
        }