Gå til innhold

Sjekke datatype i tekstboks


Anbefalte innlegg

Videoannonse
Annonse

Du kan feks gjøre det på denne måten.

 

Private Sub txtNyPostNr_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtNyPostNr.KeyPress

' Godtar bare tall og kontrolltegn

If Not (e.KeyChar.IsDigit(e.KeyChar) Or _

e.KeyChar.IsControl(e.KeyChar)) Then

epKunderDesign.SetError(sender, "Ugyldig tegn")

Else

epKunderDesign.SetError(sender, "")

End If

End Sub

 

Legg merke til at text boksen hare en KeyPress metode.

 

Hilsen Frode

Lenke til kommentar

Spørsmålet mitt gjalt programmering i vb.net

 

Jeg brukte denne koden:

 

    Private Sub txtStudnr_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtStudnr.KeyPress
       ' Godtar bare tall og kontrolltegn
          If Not (e.KeyChar.IsDigit(e.KeyChar) Or _
          e.KeyChar.IsControl(e.KeyChar)) Then
           MsgBox("Ugyldig tegn")
       Else
           MsgBox("")
        End If
   End Sub

 

Det virket i en viss grad...Dersom brukeren skriver inn bokstaver, kommer meldingsboksen med teksten "Ugyldig tegn". Brukeren trykker OK og bokstaven som ble tastet inn blir fremdeles vist i tekstfeltet.

 

Håper noen kan hjelpe meg her.

Lenke til kommentar
C# .Net

bool showWarning = true;

System.Text.RegularExpressions.Regex r = new Regex( "[a-zæøåA-ZÆØÅ]" );

txtBox.Changed += new System.EventHandler( this.txtBox_Changed);

private void txtBox_Changed( object sender, System.EventArgs e )
{
    if( r.IsMatch( txtBox.Text) )
    {
         txtBox.Text = txtBox.Text.Remove( txtBox.Text.Length-1, 1 );
         if( showWarning )
         {
               MessageBox.Show( "Only numbers.", "Warning!", MessageBoxButtons.OK, MessageBoxIcon.Warning );
               showWarning = false;
         }
         txtBox.Select(txtBox.Text.Length, 0);
    }
}

Endret av Z_IM
Lenke til kommentar
Har prøvd med forslaget til kirikiri.

jeg skriver inn en bokstav, bokstaven forsvinner, msgboxen vises, men så kommer bokstaven tilbake igjen...surt.

Gjør litt debugging på når bokstaven kommer tilbake. Sjekk om siden lastes igjen før eller etter bokstaven forsvinner, og så setter inn igjen.

 

Har du VS.NET, så sett en break på Page.IsPostback og se hva som skjer.

 

Edit: Page.Load -> Page.IsPostback.

 

Kirikiri

Endret av Kirikiri
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...