void UpdateIniItem(object sender) { var l = sender as ListView; if (l.SelectedIndex == -1) return; var c = l.Items[l.SelectedIndex] as BirthCertModel; var w = new BirthCertSettingsWindow(c.Field, c.Value) { BtnComment = { IsEnabled = false, Visibility = Visibility.Hidden } }; if (w.ShowDialog() != false) return; switch (w.RetChangeType) { case ChangeType.Amend: AmendOption(w, sender, ref c); l.SelectedIndex = -1; break; case ChangeType.Cancel: l.SelectedIndex = -1; break; } }
void AmendOption(BirthCertSettingsWindow w, object sender, ref BirthCertModel c) { var newValue = w.OptionValue; var listView = sender as ListView; if (listView == null) return; var current = listView.Items[listView.SelectedIndex] as BirthCertModel; if (newValue == c.Value && (newValue != c.Value || current.Field[0] != '#')) return; current.Value = newValue; listView.Items.Refresh(); if (c.Field.Contains("(")) c.Field = c.Field.Split("(".ToCharArray())[0]; NativeWinApi.WritePrivateProfileString("Operator", c.Field, c.Value, Properties.Resources.birth_cert); }