Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 21
  1. #1
    Utente di HTML.it L'avatar di _J_
    Registrato dal
    Apr 2007
    Messaggi
    218

    ancora datagrid, pulsanti e query...

    salve a tutti!
    sto lavorando ad un datagrid da cui devo estrarre il contenuto di alcune celle (contenuto che il datagrid preleva a sua volta da un apposito database...)
    C'è un metodo 'value' che con l'intellisense mi compare se e solo se digito l'istruzione
    nomecella.DataGridView.SelectedCells[0].Value;
    Ho provato ad applicare il ToString() e ad usare una MessageBox per vedere che valore mi dava ma non ricevo il valore della cella, ma solo un booleano!
    Se ad esempio nella cella ho una data o un intero, come posso fare per reperirlo?

    Inoltre mi piacerebbe sapere come funzionano gli inserimenti, aggiornamenti e le cancellazioni SENZA usare i 'binding navigator'
    Ho provato con delle query INSERT,UPDATE e DELETE nel file .xsd ma poi quando le uso ho dei problemi per quel che riguarda il tipo dei dati che passo alla query stesse come parametri: è come se non mi riconoscesse il tipo!
    Che cosa posso fare?

    _J_

  2. #2
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    potresti essere piu' chiaro su quello che vuoi fare ? sorry ma io non ho capito..

    se devi recuperare il contenuto di una cella, per esempio nell'itemdatabound:

    e.Item.Cells(X).Text().ToString

    dove X e' l'indice delle celle (che parte da zero) del DataGridItem (cioè calcolandole in orizzontale)

  3. #3
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    http://www.datagridgirl.com/articles.aspx
    :quote: Lì ci sono così tanti esempi che non trovare una risposta è praticamente impossibile
    Pietro

  4. #4
    Originariamente inviato da pietro09
    http://www.datagridgirl.com/articles.aspx
    :quote: Lì ci sono così tanti esempi che non trovare una risposta è praticamente impossibile
    Segnalo l'evoluzione del sito di cui sopra dopo l'uscita del framework 2.0

    Il Nuovo DataGridGirl: GridViewGirl

  5. #5
    Originariamente inviato da djciko
    potresti essere piu' chiaro su quello che vuoi fare ? sorry ma io non ho capito..

    se devi recuperare il contenuto di una cella, per esempio nell'itemdatabound:

    e.Item.Cells(X).Text().ToString

    dove X e' l'indice delle celle (che parte da zero) del DataGridItem (cioè calcolandole in orizzontale)
    Ciao Ciko, ieri mi è arrivato il libro "ASP.NET 2.0 Per tutti", ho cominciato a studiarmelo!!

  6. #6
    Utente di HTML.it L'avatar di _J_
    Registrato dal
    Apr 2007
    Messaggi
    218

    Gentilissimi...

    Innanzitutto grazie a tutti per le vostre risposte!!
    Comunque adesso spiegherò meglio la situazione a djciko...

    In realtà la mia richiesta l'hai capita, perchè si tratta di reperire da database il contenuto di una specifica cella (ad esempio una data relativa ad un certo record) mediante click sulle relative celle del datagrid..

    L'istruzione che mi hai postato è quella che anche Max Mercury mi postò qc tempo fa e si riferisce a celle di tipo testuale, ma in effetti ho dimenticato di dire che nel mio datagrid una colonna è formata da PULSANTI, dai quali appunto voglio reperire il valore in database e impostare il testo di essi in base a quel valore reperito.

    Nel caso specifico ho un database 'biblioteca' ed in una delle tabelle chiamata 'libro' c'è una colonna chiamata 'disponibilità',formata da soli booleani perchè in effetti un oggetto può essere disponibile o meno...
    E vorrei che il testo di questi pulsanti fosse 'true' per i libri che in database sono memorizzati come disponibili, mentre vorrei il 'false' per i libri non disponibili...
    Quindi vorrei impostare il testo dei pulsanti in base ai dati contenuti nelle relative celle...
    Impostando le celle come Button non riesco a trovare un metodo che mi permetta di reperire il valore della relativa cella a cui si riferisce... in effetti poi Item non me lo riconosce come proprietà dei Button..

    Per Pietro: non conoscevo il sito datagridgirl.com, è da poco che bazzico da queste parti e non ho ancora tanta dimestichezza... cmq grazie che me lo hai consigliato

  7. #7
    J a parte tutto c'è un non senso nella tua logica, perche deve esserci un pulsante con
    scritto true o false sopra?
    La cosa più logica è mettere un campo con un checkbox che sia marcato se il libro è
    presente e smarcato se invece è in prestito.
    E poi quando lo premi sto pulsante che dovrebbe fare?

  8. #8
    Utente di HTML.it L'avatar di _J_
    Registrato dal
    Apr 2007
    Messaggi
    218
    A me servono i pulsanti perchè mi sono stati richiesti... solo che non riesco a trovare un evento che ricavi il contenuto nella relativa cella nel database...
    Al click:
    se il libro è libero, mi permette di prenotarlo;
    se il libro non è libero, vedo chi lo ha preso in prestito...

  9. #9
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    Impostando le celle come Button
    Non so se questo nella vers.2.0 sia possibile, ma mi sembra strano...

    Comunque, mettiamo di avere un datagrid che nella colonna 10 ha i famosi bottoni true/false:
    Per rilevare un click fatto in un controllo -figlio- del datagrid, devi usare l'evento ItemCommand. Successivamente puoi cambiare il testo del pulsante cercandolo nella cella...

    codice:
        Private Sub datagrid_ItemCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles datagrid.ItemCommand
            Dim bottone As New Button
    
            ' Cerco il bottone nella cella 10 e lo assegno al mio bottone appena istanziato
            bottone = CType(e.Item.Cells(10).FindControl("id_bottone_nel_datagrid"), Button)
    
            ' Accesso al db
            Dim valore As String '=  valore preso dal DB
    
            bottone.Text = valore
        End Sub
    ...Per impostarlo all'inizio, il testo, invece, puoi usare l'evento ItemDataBound:
    codice:
    Private Sub datagrid_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataGridItemEventArgs) Handles datagrid_ItemDataBound
            If e.Item.ItemType = ListItemType.AlternatingItem Or e.Item.ItemType = ListItemType.Item Then
                ' Accedo al DB e recupero il valore true o false
                Dim valore As Boolean '= true o false recuperato dal DB
                Dim bottone As New Button
                bottone = CType(e.Item.Cells(10).FindControl("id_bottone_nel_datagrid"), Button)
                bottone.Text = valore
            End If
        End Sub


    @max mercury:

  10. #10
    Utente di HTML.it L'avatar di _J_
    Registrato dal
    Apr 2007
    Messaggi
    218
    innanzitutto grazie!

    scusami, ma è asp.net? e poi dove andrebbe inserito tale codice???

    E poi, ora che mi ricordo...sapresti dirmi qualcosa su
    Set identity_insert nometabella on;
    visto che non riesco a impostarla se non dal file xsd mediante le query??

    _J_

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.