An unhandled exception of type 'System.InvalidCastException'

0

Witam ponownie,
Mam kod:

    private void number_TextChanged(object sender, EventArgs e){
            var value = Regex.Replace(number.Text, "[^0-9]", "");
            number.Text = value;
            int count = value.Count();
            string completeValue = "";
            for(int i = 0; i < 8 - count; i++){
                completeValue = completeValue + "0";
            }
            completeValue = completeValue + value;
            string[] values = completeValue.Split();
            var sum = 0;
            for (int i = 0; i < 8; i++){
                switch(i + 1 % 3){
                    case 0 :
                        sum += 1 * (int)values.GetValue(i); 
                        break;
                    case 1:
                        sum += 3 * (int)values.GetValue(i);
                        break;
                    case 2:
                        sum += 7 * (int)values.GetValue(i);
                        break;
                }
            }
            MessageBox.Show(sum.ToString());
        }

Zwraca on wyjątek podany w temacie. Jak mniemam (są to tylko moje domysły) nie może zmienić stringa na inta. Mógłby mi ktoś doradzić jak mam się z tym uporać? Dodam że muszę mieć najpierw stringa aby dodać zera na początku (chyba że c# ma na to jakieś sprytne sposoby).

0

Powiedz najpierw co chcesz zrobić.

0
some_ONE napisał(a):

Powiedz najpierw co chcesz zrobić.

Policzyć sumę kontrolną. Długa historia. Sposób podany w komentarzu działa :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1