private void PreferenceSaveBtn_Click(object sender, RoutedEventArgs e) { // get all save preferences Color selectedColor = (Color)colorPickerControl.SelectedColor; // get background color Color selectedBckColor = (Color)backgroundColorPickerControl.SelectedColor; // create new prefeence obj Preference pref = new Preference(); pref.FontColor = selectedColor; pref.FontFamily = new FontFamily(PreferenceFontFamilyCombo.SelectedValue.ToString()); pref.FontSize = Math.Round(PreferenceFontSizeSlider.Value, 2); pref.BackgroundColor = selectedBckColor; // get time format bool is12TimeFormat = PreferenceTimeFormat12RadioBtn.IsChecked == true ? true : false; pref.Is12HrFormat = is12TimeFormat; // send data back to main window // invoke delegate preferenceDelegate.Invoke(pref); // close this window this.Close(); }