17. juli 2003 - 14:41
Der er
3 kommentarer
Winform validering
Hej,
Jeg er ved at udvikle en applikation (WinForm) i .Net med C# som programmeringssprog. I asp.net er det nemt at validere input felter, men jeg kan ikke se at man har samme mulighed når man arbejder med WinForms. Er det korrekt observeret? Er man stadig nød til at bruge den "gamle try-catch" metode?
r9
Nybegynder
17. juli 2003 - 14:55
#1
Der er faktisk lavet en komponent som klarer noget af det.
Brug "ErrorProvider", ligger i ToolBox'en.
Brug én ErrorProvider pr. felt som du ønsker a validerer.
Hvis du f.eks. har en TekstBox, som kun må indeholde dato'er, så gør du sådan:
System.Windows.Forms.ErrorProvider errorProviderDato;
errorProviderDato.SetIconAlignment (this.txtDato, ErrorIconAlignment.MiddleRight);
errorProviderDato.SetIconPadding (this.txtDato, 2);
errorProviderDato.BlinkRate = 1000;
errorProviderDato.BlinkStyle = System.Windows.Forms.ErrorBlinkStyle.NeverBlink;
I din opretKnap eventHandler skriver du så:
private void btnGem_Click(object sender, System.EventArgs e)
{
try
{
if (txtDato.Text.Trim().Length<1)
{
errorProviderDato.SetError(this.txtDato, "Indtast venligst en korrekt dato!");
noError = false;
txtDato.Focus();
}
else
{
errorProviderDato.SetError(this.txtDato, "");
noError = true;
}
}
Hvis ikke brugeren ikke indtaster noget i txtDato, så kommer der et lille rødt ikon udfor feltet. Og der kommer et tooltip på ikonet.
Men selve validering af om datoen er korrekt, den må du selv håndterer.