private void search_StateChanged(object sender, PasswordStateEventArgs e)
        {
            if (sender is Password)
            {
                Password search = (sender as Password);
                switch (e.SearchState)
                {
                case SearchState.NotStarted:
                    this.Dispatcher.Invoke(() => Reset());
                    break;

                case SearchState.Seeking:
                    this.Dispatcher.Invoke(() => SearchStarted());
                    break;

                case SearchState.DoneSeeking:
                    this.Dispatcher.Invoke(() => SearchFinished());
                    break;

                case SearchState.Cancelled:
                    this.Dispatcher.Invoke(() => SearchCancelled());
                    break;
                }
            }
        }
 private void password_StateChanged(object sender, PasswordStateEventArgs e)
 {
     if (sender is Password)
     {
         Password password = (sender as Password);
         if (e.SearchState == SearchState.DoneSeeking)
         {
             Edited = false;
         }
         this.Dispatcher.Invoke(() => this.IsEnabled = (e.SearchState != SearchState.Seeking));
     }
 }