Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    271

    textbox con valori di default

    Salve a tutti,
    penso di fare una domanda semplice e stupida ma non riesco proprio a trovare una soluzione.

    su un form collegato a un db vorrei che quando chiedo di aggiungere un nuovo record, alcune textbox come quella della data di inserimento, siano valorizzate automaticamente.

    Non riesco a trovare l'evento giusto in cui agire; pensavo di trovare qualcosa nel BindingSource ma niente!!!

    Avete suggerimenti?
    Grazie
    Ikon
    Signori si nasce! E io modestamente, lo nacqui!!!
    Totò

  2. #2
    Utente di HTML.it L'avatar di fu510n
    Registrato dal
    Sep 2005
    Messaggi
    137
    Devi agire direttamente dal DataSet. Seleziona il campo a cui vuoi assegnare un valore di default e guarda tra le proprietà. Troverai "DefaultValue" ... a cosa ti fa pensare?

    Invece per quanto riguarda le date... beh... io utilizzo dei DateTimePicker bindati al DB e quando aggiungo un nuovo record ho in automatico la data odierna.


    Bye Bye
    Fusion

    Currency Text Box (Updated: 16 Maggio 2008): http://digilander.libero.it/cmfusion/CurrencyTextBox.html

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    271
    OK grazie.

    Supponiamo invece che non si tratti solo di assegnare il valore di default a delle textbox o altro collegati ai dati.
    Magari voglio visualizzare in una label la stringa "STAI AGGIUNGENDO UN NUOVO RECORD RICORDATI DI SALVARE!!!"

    anche in questo ho lo stesso problema... in quale evento devo mettere le mani??

    Grazie ancora
    Ikon
    Signori si nasce! E io modestamente, lo nacqui!!!
    Totò

  4. #4
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Riguardo al valore di default, il concetto di fu510n vale solo quando aggiungi il record al database.
    Non so se è questo che intendevi, dato che tu hai chiesto di valorizzare le TextBox, ed è quindi logico supporre che il record NON è ancora stato aggiunto al database.
    Il tutto dipende se si lavora connessi o disconnessi (il che sarebbe meglio).

    Per il resto (avviso) devi prima indicare di quale linguaggio stai parlando, e di quale versione perchè il codice, come immaginerai, cambia sostanzialmente.

    Ciao

  5. #5
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,465

    Moderazione

    Originariamente inviato da IKON
    textbox con valori di default
    Il linguaggio va indicato anche nel titolo, come da Regolamento.

    Qui l'ho aggiunto io.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  6. #6
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    271
    Chiedo scusa ma me ne ero dimenticato ... cmq giusto! Parlavo di VB.NET

    Penso che sto lavorando disconnesso utilizzo tutta l'infrastruttura di adonet tableadapter - datatable - bindingsorce etc.... tutto fatto con il wizard di VS.

    Comunque quello che voglio fare è intercettare il momento dopo che tutte le operazioni di add sono terminate, cioè i controlli tipo textbox sono stati svuotati, è stato aggiunto un nuovo rigo vuoto ala datagridview collegata (se ce n'è una) etc...

    Grazie ancora
    IKON
    Signori si nasce! E io modestamente, lo nacqui!!!
    Totò

  7. #7
    Utente di HTML.it L'avatar di fu510n
    Registrato dal
    Sep 2005
    Messaggi
    137
    Come aggiungi un nuovo record? Via codice? Utilizzi un BindingNavigator?

    Quali eventi vuoi gestire? Non si capisce bene da come lo hai spiegato. Ho capito soltanto che vuoi gestire l'inserimento di un nuovo record e intercettare il momento esatto in cui viene aggiunto.
    Fusion

    Currency Text Box (Updated: 16 Maggio 2008): http://digilander.libero.it/cmfusion/CurrencyTextBox.html

  8. #8
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    271
    Ho utilizzato semplicemente la procedura guidata.
    Ho creato il datasource e poi sulla form ho trascinato prima i dati dalla dal datasource sotto forma di datagridview e VS mi ha creato il bindingnavigator, il bindingsource, e il tableadapter.

    poi ho trascinato di nuovo i dati dal datasource ma questa volta sottoforma di detail, così nella parte bassa del form ho tutti i record che mi interessano in una griglia e in quella alta il dettaglio del record corrente.

    In questo scenario, l'aggiunta del nuovo record la effettuo cliccando sul pulsante "Aggiungi" del bindingnavigator.

    Ora mi interessa intercettare il momento "dopo l'aggiunta del record nel dataset"; cioè clicco sul pulsante per aggiungere e io da codice devo inizializzare variabili, mettere un valore di default in una textbox, cambiare il testo di una label etc...

    Grazie ancora
    IKON
    Signori si nasce! E io modestamente, lo nacqui!!!
    Totò

  9. #9
    Utente di HTML.it L'avatar di fu510n
    Registrato dal
    Sep 2005
    Messaggi
    137
    Quando tu clicchi sul pulsante aggiungi e viene creato il nuovo record vuoto, viene anche aggiunta una riga vuota nella DataGridView, giusto?
    Se così fosse, puoi gestire l'evento "RowsAdded" della griglia.

    Se invece vuoi gestire il tutto in maniera diversa agendo direttamente sul record, seleziona il BindingNavigator, tra le proprietà trovi "AddNewItem" che dovrebbe avere come valore "BindingNavigatorAddNewItem" (se hai lasciato tutto di default). Cambia questa proprietà in "(nessuno)". Poi fai un bel doppio click sul tuo pulsante "Aggiungi" del binding navigator per passare alla modalità codice direttamente sull'evento "Click" del pulsante.
    Inserisci qualcosa di simile:

    codice:
    Dim NewRecord As Object = NomeDelTuoBindingSource.AddNew()
    NewRecord("Cognome") = "Io sono un cognome di default"
    NewRecord("Nome") = "(inserire un nome)"
    ...
    ...
    In poche parole gestisci manualmente l'inserimento di un nuovo record nel tuo datasource anzichè lasciarlo gestire in automatico al bindingnavigator.
    Fusion

    Currency Text Box (Updated: 16 Maggio 2008): http://digilander.libero.it/cmfusion/CurrencyTextBox.html

  10. #10
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    271
    ok grazie.
    per la griglia la cosa sembra funzionare.

    Però per la parte relativa al dettaglio (la visualizzazione del dettaglio del record nella parte alta della finestra mediante textbox) non va.
    Le textbox "bindate" ai campi di cui imposto il valore di default non visualizzano il valore di default, mentre le colonne della griglia si.
    Signori si nasce! E io modestamente, lo nacqui!!!
    Totò

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.