示例#1
0
        void box_Checked(object sender, RoutedEventArgs e)
        {
            //we need to get our index.
            int index = -1;

            for (int i = 0; i < RelayPrechargeCheckboxes.Count(); ++i)
            {
                if (sender == RelayPrechargeCheckboxes[i])
                {
                    index = i;
                }
            }

            if (index == -1)
            {
                throw new Exception();
            }

            bool is_checked = RelayPrechargeCheckboxes[index].IsChecked.Value;

            BatteryWriteData.SetRelayPrechargeState(index, is_checked);

            if (is_checked)
            {
                RelayBtns[index].IsEnabled = true;
            }
            else if ((BatteryWriteData.GetRelayState(index) == false) && (index != 1)) //disable the button if the relay isn't currently on.
            {
                RelayBtns[index].IsEnabled = false;
            }
        }