Пример #1
0
        private void ConvertButton_Click(object sender, RoutedEventArgs e)
        {

            if(NumOfBands.SelectedItem != null) {

                ResultBox.Visibility = Visibility.Visible;
                ResultBoxStatus.Visibility = Visibility.Hidden;
                int numOfBands = Convert.ToInt32(((ComboBoxItem)NumOfBands.SelectedItem).Content);

                int BandNumber = 0;
                double[] Bands = new double[numOfBands];

                // Loop through resistor band colour ComboBoxes and read into array
                foreach (ComboBox child in ResistorBands.Children)
                {

                    if (child.Visibility == Visibility.Visible)
                    {
                        try {
                            Bands[BandNumber] = resColours[Convert.ToString(child.SelectedValue)];
                        }
                        catch(KeyNotFoundException)
                        {
                            ResultBoxStatus.Text = "Please select a colour for each resistor band.";
                            ResultBoxStatus.Visibility = Visibility.Visible;
                            return; 
                        }
                    }
                    BandNumber++;
                }

                ResistorFactory rf = new ResistorFactory();
                Resistor resistor = rf.CreateResistor(numOfBands);
                resistor.CalculateValues(Bands);
                ResultBox.DataContext = resistor;

            }
            else
            {
                ResultBoxStatus.Visibility = Visibility.Visible;
                ResultBox.Visibility = Visibility.Hidden;
            }


        }