2016-03-19 4 views
-1
hinzu

Ich finde diesen Code von hier, um eine Einheit wie Minuten oder kg am Ende eines Textfelds hinzuzufügen, nachdem die Nummer eingegeben wurde. in C#Wie füge ich eine Einheit am Ende der Textbox in C#

private void CowAgetxtBox_Leave(object sender, EventArgs e) 
    { 
     { 
      CowAgetxtBox.Text = CowAgetxtBox.Text + " Month"; 
     } 
    } 

    private void CowAgetxtBox_Enter(object sender, EventArgs e) 
    { 
     { 
      CowAgetxtBox.Text = CowAgetxtBox.Text.Replace(" Month", ""); 
     } 
    } 

aber ich weiß nicht, wie diese Zahl bekommen, ich diesen Code verwenden, aber es funktioniert nicht

int Age = int.Parse(CowAgetxtBox.Text); 
+0

was ist der Wert in CowAgetx tBox.Text? –

+0

es ist eine int-Variable, zum Beispiel, wenn Benutzer einfügen Nummer 3 n der Textbox es ersetzen Whit 3 Monat, aber ich möchte die Nummer in einer Formel verwenden –

+0

Sie wissen bereits, wie Sie "Monat" abstreifen, tun Sie es einfach noch einmal. Betrachten Sie ein Label. –

Antwort

1

Sie müssen nur einen Prozess ähnlich wie Sie, wenn der Benutzer auf das Textfeld konzentriert.

int Age = int.Parse(CowAgetxtBox.Text.Replace(" Month", "")); 

Dies wird die Arbeit erledigen.

0

Es dass

  CowAgetxtBox.Text 

diese Aussage scheint enthält den Wert anders als die Zahl, deshalb ist dieses Statement

 int Age = int.Parse(CowAgetxtBox.Text); 

funktioniert nicht entfernen "Monat" von der ersten Funktion

0

Sie können eine Eigenschaft wie folgt hinzu:

int Age { 
get { return Convert.ToInt32(CowAgetxtBox.Text.Replace(" Month", ""));  } 
} 
3

Eigentlich ist es keine gute Idee, die Einheit in der Textbox zu setzen, dies wird eine Menge Probleme in der Datenvalidierung verursachen, Lokalisierung, Gießen. .. besser, um es außerhalb der Textbox zu setzen :)

0

Wenn die Änderungen Einheit Etikett, könnte dies mehr Fälle für Sie arbeiten in:

int Age = int.Parse(CowAgetxtBox.Text.Split(' ')[0]); 
Verwandte Themen