private void ChangeKeyLogic()
 {
     if (!string.IsNullOrEmpty(SelectedDBStoredImage.ImageID))
     {//check to see if key is part of the current companylist...
         DBStoredImage query = DBStoredImageList.Where(company => company.ImageID == SelectedDBStoredImage.ImageID &&
                                                       company.AutoID != SelectedDBStoredImage.AutoID).FirstOrDefault();
         if (query != null)
         {//revert it back
             SelectedDBStoredImage.ImageID = SelectedDBStoredImageMirror.ImageID;
             //change to the newly selected company...
             SelectedDBStoredImage = query;
             return;
         }
         //it is not part of the existing list try to fetch it from the db...
         DBStoredImageList = GetDBStoredImageByID(SelectedDBStoredImage.ImageID, XERP.Client.ClientSessionSingleton.Instance.CompanyID);
         if (DBStoredImageList.Count == 0)//it was not found do new record required logic...
         {
             NotifyNewRecordNeeded("Record " + SelectedDBStoredImage.ImageID + " Does Not Exist.  Create A New Record?");
         }
         else
         {
             SelectedDBStoredImage = DBStoredImageList.FirstOrDefault();
         }
     }
     else
     {
         string errorMessage = "ID Is Required.";
         NotifyMessage(errorMessage);
         //revert back to the value it was before it was changed...
         if (SelectedDBStoredImage.ImageID != SelectedDBStoredImageMirror.ImageID)
         {
             SelectedDBStoredImage.ImageID = SelectedDBStoredImageMirror.ImageID;
         }
     }
 }
 private void OnSearchResult(object sender, NotificationEventArgs <BindingList <DBStoredImage> > e)
 {
     if (e.Data != null && e.Data.Count > 0)
     {
         DBStoredImageList     = e.Data;
         SelectedDBStoredImage = DBStoredImageList.FirstOrDefault();
         Dirty       = false;
         AllowCommit = false;
     }
     UnregisterToReceiveMessages <BindingList <DBStoredImage> >(MessageTokens.DBStoredImageSearchToken.ToString(), OnSearchResult);
 }