+ Rispondi al messaggio
Visualizzazione dei risultati da 1 a 9 su 9

[VB2010] MaskedTextBox - Formato Mask come "Data Breve"

  1. #1
    AntoBS non  in linea Novello
    Ciao a tutti,
    ho utilizzato un controllo maskedtextbox con impostazione formato "data breve", se imposto e controllo la data tutto Ok. mentre se
    imposto la data vuota dopo aver digitato una data rimane inchiodato sempre li. C'e' una funzione o propreit che quando il valore di data vuoto salto il controllo (naturalmente senza controllare le //) ? Grazie, sempre molto fiducioso.

  2. #2
    L'avatar di sistemista
    sistemista non  in linea Topo di biblioteca
    Posta il codice che hai scritto.
    ℹ️ Leggi di pi su sistemista ...

  3. #3
    mastrix non  in linea Scolaretto
    Io neanche ho ben capito...

  4. #4
    AntoBS non  in linea Novello
    Grazie del Tuo tempo.
    Chiarisco meglio.
    Ho creato una Form1 semplice, ho trascinato all'interno un controllo comune: MaskedTextBox con maschera "Data breve", tutto Ok e funziona.
    Al Form1 ho collegato una tabella che contiene una data, a questo campo ho associato una MaskedTextBox con caratteristiche come sopra.
    Se in questo campo inserisco una data, mi memorizza nella tabella la data, mentre se voglio cancellare una data inserita precedentemente, non mi lascia cancellare la data. Oggi ho scoperto che inserendo 01/01/0001 mi lascia il campo vuoto. Mentre mi piacerebbe che cancellando la data lascia il campo vuoto. C' una propriet o qualcosa di simile?
    Il codice banale e non attinente il controllo maskedTextBox comunque:
    Public Class Form1
    
        Private Sub ComunicaBindingNavigatorSaveItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComunicaBindingNavigatorSaveItem.Click
            Me.Validate()
            Me.ComunicaBindingSource.EndEdit()
            Me.TableAdapterManager.UpdateAll(Me.AziendaDataSet)
        End Sub
        Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            Me.ComunicaTableAdapter.Fill(Me.AziendaDataSet.Comunica)
        End Sub
    End Class
    
    Ultima modifica di elisab; 21-03-2012 19:07  Motivo: mancato utilizzo dei tag [code][/code]

  5. #5
    L'avatar di bumm
    bumm non  in linea Topo di biblioteca Ultimo blog: [VB2010] ComboBox ed Enumeratori
    Non chiaro che errore ti da. Ho un sospetto che stai usando il binding. In tal caso dovresti vedere se la colonna a quale associato maskedTextBox accetta i valori NULL.
    ℹ️ Leggi di pi su bumm ...

  6. #6
    AntoBS non  in linea Novello
    Gia verificato, sia il database che il Binding accetta valori NULL, sembra che nelle versioni precedente la microsoft abbia messo a posto questo Buco. Nel database il campo stato settato come date e quindi ho utilizzato nel progetto lo stesso formato. Ma come posso far passare una data vuota? Digitando 01/01/0001 passa una stringa vuota. Vorrei evitare questo. Se invece nel campo non mai stato digitato una data, il controllo con il tasto tab viene saltato al campo successivo. Cosa c' di diverso se eviste una data e poi la cancello? Mha mistero!... O forse mi perdo in un bicchiere d'acqua. Ciao

  7. #7
    AntoBS non  in linea Novello
    Quote Originariamente inviato da sistemista Visualizza il messaggio
    Posta il codice che hai scritto.
    Peso di aver risolto in questo modo, non so s una soluzione elegante o meno comunque il codice :

        Private Sub DataMaskedTextBox_TypeValidationCompleted(sender As System.Object, e As System.Windows.Forms.TypeValidationEventArgs) Handles DataMaskedTextBox.TypeValidationCompleted
            If (Not e.IsValidInput) Then
                If e.ReturnValue = Nothing Then
                    DataMaskedTextBox.Text = "01/01/0001"
                End If
            End If
        End Sub
    

    Cosa ne pensi?
    Ultima modifica di elisab; 21-03-2012 23:38  Motivo: uniti 2 messaggi inviati a 1 minuto di distanza

  8. #8
    L'avatar di elisab
    elisab non  in linea Scribacchino
    Ciao AntoBS
    il codice deve essere postato all'interno dei tag [CODE][/CODE], che fanno in modo che il codice mantenga l'indentazione rendendolo pi leggibile. Premi il pulsante della barra dell'editor raffigurante il # ed incolla il codice all'interno dei tag. Qui un esempio di uso.

    Entro due ore dall'invio puoi editare il tuo messaggio (sotto al post potrai vedere il pulsante Modifica messaggio), se nel frattempo non hai ricevuto risposte e vuoi fare delle aggiunte o correzioni modifica l'ultimo messaggio che hai inviato.
    ℹ️ Leggi di pi su elisab ...

  9. #9
    AntoBS non  in linea Novello
    Ciao elisab,
    grazie del succerimento. Ho visionato gli esempi, nelle prossime risposte utilizzero gli appropriati simboli.

+ Rispondi al messaggio

Potrebbero interessarti anche ...

  1. query con operazione tra campi con formato "ora estesa"
    Da keccoricci nel forum Microsoft Access
    Risposte: 2
    Ultimo Post: 19-06-2015, 22:19
  2. Risposte: 11
    Ultimo Post: 02-10-2012, 15:51
  3. formato caratteri in "finestra messaggio"
    Da ulisse1981 nel forum Microsoft Word
    Risposte: 4
    Ultimo Post: 14-12-2009, 15:50
  4. togliere delle fastidiose """""""
    Da cubateam nel forum Microsoft Word
    Risposte: 10
    Ultimo Post: 21-06-2007, 20:06
  5. Problemi col formato "ore" di excel
    Da addo nel forum Microsoft Excel
    Risposte: 9
    Ultimo Post: 23-06-2006, 11:20