private void Button_Click(object sender, RoutedEventArgs e) { ObservableCollection <LinkParam> lv_source = new ObservableCollection <LinkParam>(); AddNewParam par_win = new AddNewParam(); par_win.Owner = this; List <ConfigEvent> evs = main_proj.CurrentWF.GetAllEvents(); foreach (ConfigEvent ce in evs) { lv_source.Add(new LinkParam() { Name = ce.name, Selected = false, App_res = "" }); } par_win.Event_List.ItemsSource = lv_source; if (par_win.ShowDialog().Value == true) { //检查是否有重名的变量名 foreach (param pa in main_proj.CurrentWF.params_table) { if (pa.Name == par_win.name.Text.Trim()) { break; } } //添加变量 main_proj.CurrentWF.params_table.Add(new param() { Name = par_win.name.Text, Desc = par_win.desc.Text, Type = par_win.type.SelectedItem.ToString() }); foreach (LinkParam it in par_win.Event_List.Items) { foreach (ConfigEvent ee in evs) { if (ee.name == it.Name) { if (it.Selected == true) { ee.LinkParams.Add(par_win.name.Text, it.App_res); } } } } } }
public void Confi_Param(param pa) { ObservableCollection <LinkParam> lv_source = new ObservableCollection <LinkParam>(); AddNewParam par_win = new AddNewParam(); par_win.Owner = this; par_win.name.Text = pa.Name; par_win.name.IsEnabled = false; par_win.desc.Text = pa.Desc; par_win.type.SelectedItem = pa.Type; List <ConfigEvent> evs = main_proj.CurrentWF.GetAllEvents(); foreach (ConfigEvent ce in evs) { lv_source.Add(new LinkParam() { Name = ce.name, Selected = ce.LinkParams.ContainsKey(pa.Name), App_res = (ce.LinkParams.ContainsKey(pa.Name) ? ce.LinkParams[pa.Name] : "") }); } par_win.Event_List.ItemsSource = lv_source; if (par_win.ShowDialog().Value == true) { pa.Type = par_win.type.Text; pa.Desc = par_win.desc.Text; foreach (LinkParam it in par_win.Event_List.Items) { foreach (ConfigEvent ee in evs) { if (ee.name == it.Name) { if (it.Selected == true) { if (!ee.LinkParams.ContainsKey(par_win.name.Text)) { ee.LinkParams.Add(par_win.name.Text, it.App_res); } else { ee.LinkParams[par_win.name.Text] = it.App_res; } } } } } } }