//modify one citizen
        private void CitizenModifyClick(object sender, RoutedEventArgs e)
        {
            DataManager ins = DataManager.createInstance();
            Citizen c = (Citizen)this.CitizenList.SelectedItem;
            if (c == null)
            {
                System.Windows.MessageBox.Show("请选择后再修改", "提示", System.Windows.MessageBoxButton.OK);
                return;
            }

            addCitizen cw = new addCitizen(true, c);
            cw.Owner = this;

            if (cw.ShowDialog() ?? false)
            {
                ObservableCollection<Citizen> cns = (ObservableCollection<Citizen>)this.CitizenList.ItemsSource;
                int index = cns.IndexOf(c);
                cns.Remove(c);

                c = (Citizen)cw.ModifyC;
                cns.Insert(index, c);
                //this.CitizenList.ItemsSource
            }
        }
        //add one citizen
        private void CitizenAddClick(object sender, RoutedEventArgs e)
        {
            addCitizen cw = new addCitizen(false, new Citizen());
            cw.Owner = this;

            if (cw.ShowDialog() ?? false)
            {
                ObservableCollection<Citizen> cns = (ObservableCollection<Citizen>)this.CitizenList.ItemsSource;

                if (cns == null)
                {
                    cns = new ObservableCollection<Citizen>();
                }

                Citizen c = (Citizen)cw.ModifyC;
                cns.Add(c);
                this.CitizenList.ItemsSource = cns;
            }
        }