kostenloser Webspace werbefrei: lima-city


C# - maskedTextBox - Eingabe Dezimalzahl

lima-cityForumProgrammiersprachenProgrammieren mit .NET & Mono

  1. Autor dieses Themas

    mcal

    Kostenloser Webspace von mcal

    mcal hat kostenlosen Webspace.

    Hallo,

    bin dabei ein altes Clipper-Programm auf c# neu zu programmieren. Nun zu meinem Problem ich möchte in einem Feld (maskedTextBox) dem User gestatten eine beliebige 4stellige Zahl (max. 9999,99) mit oder ohne Komma-Stelle einzugeben.

    Leider stoße ich ich hierbei auf diverse Schwierigkeiten, wie z.B. Komma nach 2 Stellen einzugeben (Fließkomma).

    Wäre dankbar für die Hilfe.


    Hab eine Lösung gefunden:

    Textbox verwenden und TextAlign auf "Right"

    void textBox1_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
    {
    if (!((e.KeyValue >= 48 && e.KeyValue <= 57) || //Prüfung auf Tasten 0-9
    (e.KeyValue >= 96 && e.KeyValue <= 105) || //Prüfung auf NumPad 0-9
    (e.KeyCode == Keys.Back || //Rücktaste
    e.KeyCode == Keys.Left || //Pfeiltasten
    e.KeyCode == Keys.Right ||
    e.KeyCode == Keys.Delete) || //Entf-Taste
    (e.KeyValue == 188 || e.KeyValue == 110 && !((TextBox)sender).Text.Contains(",")))) //Komma, nur einmalig zulassen
    {
    e.SuppressKeyPress = true; //KeyPress unterdrücken
    e.Handled = true;
    }

    }

    Beitrag zuletzt geändert: 26.1.2011 11:55:37 von mcal
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!