コード例 #1
0
        private void btnDeleteRule_Click(object sender, RoutedEventArgs e)
        {
            //get data context
            Button     btnDeleteRule = sender as Button;
            RuleHeader rule          = btnDeleteRule.DataContext as RuleHeader;

            //get index of rule being removed
            Int32 index = Rules.IndexOf(rule);

            //remove rule
            Rules.Remove(rule);

            //update indices of remaing rules
            for (int i = index; i < Rules.Count; i++)
            {
                Rules[i].Index--;
            }
        }
コード例 #2
0
        private void btnAddRule_Click(object sender, RoutedEventArgs e)
        {
            //get data context
            Button     btnDeleteRule = sender as Button;
            RuleHeader rule          = btnDeleteRule.DataContext as RuleHeader;

            //get index of rule that new rule is being added after
            Int32 index = Rules.IndexOf(rule) + 1;

            //update indices of rules that come after the one being inserted
            for (int i = index; i < Rules.Count; i++)
            {
                Rules[i].Index++;
            }

            //insert rule
            Rules.Insert(index, new RuleHeader()
            {
                Index = index
            });
        }