C# IBAN "Rechner": Wie kann ich die IBAN in BLZ und Konto-Nr. zerteilen?

Hallo,

ich programmiere gerade eine Anwendung, die, wenn man BLZ und Konto-Nr eingibt, die IBAN "errechnet". Jetzt habe ich die IBAN berechnet, will aber, dass bei dem tabControl bei "IBAN zerteilen" die "errechnete" IBAN vom IBAN generieren Tab dort bei der IBAN-Textbox angezeigt wird und wenn ich auch den zerteilen Button anklicke, er mir die BLZ und Konto-Nr zurückgibt. Also genau umgekehrt.

Thx.

Hier der bisher bestehende Code:

public void buttonGenerieren_Click(object sender, EventArgs e){ 
   string knr, blz, ergebnis;
   knr = textBoxKontoNrGenerieren.Text;
   blz = textBoxBlzGenerieren.Text;
   double num; 
	
   if ((double.TryParse(knr, out num)) && (double.TryParse(blz, out num))) 
   {	
	ergebnis = CreateIBAN("DE", blz, knr) 
	textBoxIbanGenerieren.Text = ergebnis;
   } 
   else 
   {
	textBoxKontoNrGenerieren.Text = "";
	textBoxBlzGenerieren.Text = "";
   }
}

string CreateIBAN(string lkz, string blz, string kntnr, bool groupedReturn = true) 
{
    string bban = string.Empty;
    lkz = lkz.ToUpper();

    switch(lkz) 
    { 
	case "AT": 
        { 
	   bban = blz.PadLeft(5, '0') + kntnr.PadLeft(11, '0');
	} 
	  break;
	case "DE": 
        {
	   bban = blz.PadLeft(0, '0') + kntnr.PadLeft(10, '0');
	}
	  break;
	case "CH": 
        {
	   bban = blz.PadLeft(5, '0') + kntnr.PadLeft(12, '0');
	}
	  break;
    }
	
    string sum = bban + lkz.Aggregate("", (current, c) => current + (c - 55).ToString()) + "00";
    var d = decimal.Parse(sum);
    var checksum = 98 - (d % 97);
    string iban = lkz + checksum.ToString().PadLeft(2, '0') + bban;
	
    return groupedReturn
      ? iban.Select(c, i) => (i % 4 == 3) ? c + " " : c + "").Aggregate("", (current, c) => current + c) 
      : iban;
}

public void buttonZerteilen_Click(object sender, EventArgs e)
{
    // Was kommt jetzt hier rein?
}
Computer, programmieren, Rechner, C Sharp, IBAN, Visual Studio, source code, Wirtschaft und Finanzen

Meistgelesene Fragen zum Thema Source code