BeFriend.ViewModel.CallandSettingsPageViewModel.EditContactButtonHandler C# (CSharp) Метод

EditContactButtonHandler() приватный Метод

private EditContactButtonHandler ( object parameter ) : void
parameter object
Результат void
        private async void EditContactButtonHandler(object parameter)
        {
            var applicationData = ApplicationData.Current;
            var localsettings = applicationData.LocalSettings;
            switch (int.Parse(parameter.ToString()))
            {
                case 1:
                    var contactPicker = new ContactPicker();
                    // Ask the user to pick contact phone numbers.
                    contactPicker.DesiredFieldsWithContactFieldType.Add(ContactFieldType.PhoneNumber);
                    var contacts = await contactPicker.PickContactAsync();
                    if (!localsettings.Values.ContainsKey("FirstContactName"))
                    {
                        localsettings.Values.Add("FirstContactName", contacts.DisplayName);
                        localsettings.Values.Add("FirstContactNumber", contacts.YomiDisplayName);
                        
                        FirstContactName = contacts.DisplayName;
                        RaisePropertyChanged(() => FirstContactName);
                    }
                    else
                    {
                        localsettings.Values.Remove("FirstContactName");
                        localsettings.Values.Remove("FirstContactNumber");
                        localsettings.Values.Add("FirstContactName", contacts.DisplayName);
                        localsettings.Values.Add("FirstContactNumber", contacts.YomiDisplayName);
                        FirstContactName = contacts.DisplayName;
                        RaisePropertyChanged(() => FirstContactName);

                    }
                    break;

                case 2:
                    var contactPicker1 = new ContactPicker();
                    // Ask the user to pick contact phone numbers.
                    contactPicker1.DesiredFieldsWithContactFieldType.Add(ContactFieldType.PhoneNumber);
                    var contacts1 = await contactPicker1.PickContactAsync();
                    if (!localsettings.Values.ContainsKey("SecondContactName"))
                    {
                        localsettings.Values.Add("SecondContactName", contacts1.DisplayName);
                        localsettings.Values.Add("SecondContactNumber", contacts1.YomiDisplayName);
                        SecondContactName = contacts1.DisplayName;
                        RaisePropertyChanged(() => SecondContactName);
                    }
                    else
                    {
                        localsettings.Values.Remove("SecondContactName");
                        localsettings.Values.Remove("SecondContactNumber");
                        localsettings.Values.Add("SecondContactName", contacts1.DisplayName);
                        localsettings.Values.Add("SecondContactNumber", contacts1.YomiDisplayName);
                        SecondContactName = contacts1.DisplayName;
                        RaisePropertyChanged(() => SecondContactName);
                    }
                    break;

                case 3:
                    var contactPicker2 = new ContactPicker();
                    // Ask the user to pick contact phone numbers.
                    contactPicker2.DesiredFieldsWithContactFieldType.Add(ContactFieldType.PhoneNumber);
                    var contacts2 = await contactPicker2.PickContactAsync();
                    if (!localsettings.Values.ContainsKey("ThirdContactName"))
                    {
                        localsettings.Values.Add("ThirdContactName", contacts2.DisplayName);
                        localsettings.Values.Add("ThirdContactNumber", contacts2.YomiDisplayName);
                        ThirdContactName = contacts2.DisplayName;
                        RaisePropertyChanged(() => ThirdContactName);
                    }
                    else
                    {
                        localsettings.Values.Remove("ThirdContactName");
                        localsettings.Values.Remove("ThirdContactNumber");
                        localsettings.Values.Add("ThirdContactName", contacts2.DisplayName);
                        localsettings.Values.Add("ThirdContactNumber", contacts2.YomiDisplayName);
                        ThirdContactName = contacts2.DisplayName;
                        RaisePropertyChanged(() => ThirdContactName);
                    }
                    break;

                case 4:

                    IsMessageBoxDisabled = true;
                    MessageEditIconVisibility = Visibility.Visible;
                    MessageSaveIconVisibility = Visibility.Collapsed;
                    RaisePropertyChanged(()=> MessageEditIconVisibility);
                    RaisePropertyChanged(()=> MessageSaveIconVisibility);
                    RaisePropertyChanged(()=> IsMessageBoxDisabled);
                    var localData = ApplicationData.Current.LocalSettings;
                    var roamData = ApplicationData.Current.RoamingSettings;
                    if (!localData.Values.ContainsKey("MessageToSend") && !roamData.Values.ContainsKey("MessageToSend"))
                    {
                        localData.Values.Add("MessageToSend", MessageBox);
                        roamData.Values.Add("MessageToSend", MessageBox);
                    }
                    else
                    {
                        localData.Values.Remove("MessageToSend");
                        roamData.Values.Remove("MessageToSend");
                        localData.Values.Add("MessageToSend", MessageBox);
                        roamData.Values.Add("MessageToSend", MessageBox);
                    }

                    break;

                case 5:
                    IsMessageBoxDisabled = false;
                    MessageEditIconVisibility = Visibility.Collapsed;
                    MessageSaveIconVisibility = Visibility.Visible;
                    RaisePropertyChanged(() => MessageEditIconVisibility);
                    RaisePropertyChanged(() => MessageSaveIconVisibility);
                    RaisePropertyChanged(() => IsMessageBoxDisabled);
                    break;

                default:
                    Debug.WriteLine("Default Case Hit!");
                    break;
            }
        }