Domanda

Ho una TextEdit DevExpress che è databound ad un set di dati.

Il campo è una percentuale facoltativa, (tipo di dati doppio).

Quando il disco viene caricato e non v'è alcun valore nel campo, è tutto a posto.

Tuttavia, se si digita qualcosa nel campo (IE 100) e quindi da rimuovere subito dopo, mi appare un valido valore di errore.

Perché si verifica, e come posso rimuoverlo?

Non ho alcuna maschera o qualsiasi tipo di convalida esplicito su questo campo.

È stato utile?

Soluzione

Ho risolto questo con l'aiuto di Brendon Muck sui forum DevExpress.

Uno dei miei TextEdit di era destinato alla proprietà Text invece della EditValue (tutti dovrebbero essere tenuti ad EditValue)

Inoltre, per Brendon

  

L'eliminazione del testo fuori del controllo TextEdit non impostare il campo per NULL. Avresti per gestire l'evento EditValueChanged e impostare manualmente un valore nullo quando viene rilevata una stringa vuota.

Così, ho creato il metodo di gestire la cosa

Private Sub SetTextEditToNull(ByVal sender As TextEdit)

    If String.IsNullOrEmpty(sender.EditValue.ToString.Trim()) And (Not sender.EditValue Is DBNull.Value) Then

        sender.EditValue = DBNull.Value

    End If

End Sub

E nel mio gestore di eventi che uso:

    SetTextEditToNull(CType(sender, TextEdit))
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top