示例#1
0
        private void Accept_Click(object sender, RoutedEventArgs e)
        {
            ActiveRules.Clear();
            var items = ActiveRulesGrid.Items;

            foreach (var item in items)
            {
                var Rule = item as Rule;
                ActiveRules.Add(Rule);
            }

            Items4.Items.Clear();
            Items8.Items.Clear();
            Items24.Items.Clear();

            foreach (Rule Rule in ActiveRules)
            {
                TreeViewItem x = AddRuleWindow.GetTreeView(Rule.Name);
                if (Rule.Neighbourhood == 4)
                {
                    Items4.Items.Add(x);
                }
                else if (Rule.Neighbourhood == 8)
                {
                    Items8.Items.Add(x);
                }
                else if (Rule.Neighbourhood == 24)
                {
                    Items24.Items.Add(x);
                }
            }


            this.Close();
        }
示例#2
0
        private void Modify_Click(object sender, RoutedEventArgs e)
        {
            if (Socket.Count == 1)
            {
                Rule   rule  = Socket[0];
                string oName = rule.Name;
                //   Rule result = AllRules.Find(x => x.Name == rule.Name);
                AddRuleWindow AddWindow = new AddRuleWindow(rule, AllRules, Items4, Items8, Items24);
                AddWindow.ShowDialog();

                //  rule = ActiveRulesGrid.SelectedItem as Rule;
                int i = ActiveRulesGrid.Items.IndexOf(rule);
                ActiveRulesGrid.Items.Refresh();
                AllRulesGrid.Items.Refresh();
            }

            else if (Socket.Count > 1)
            {
                MessageBox.Show("Please Edit one rule at a time");
            }
            else if (Socket.Count == 0)
            {
                MessageBox.Show("Please Select a single rule to edit");
            }
        }