Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 17
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    10

    master pages con gridview e datakeynames

    niente da fare, non appena utilizzo le master pages non riesco piu' ad utilizzare

    Sub selezionato2(ByVal sender As Object, ByVal e As GridViewSelectEventArgs)
    gridview.DataKeys(e.NewSelectedIndex).Values(0).To String()

    dove

    <asp:GridView DataKeyNames="codice" OnSelectedIndexChanging="selezionato2" enableviewstate="false" ID="gridview" AllowSorting="true" runat="server" AutoGenerateColumns="false" TabIndex="7">

    subito restituito Index was out of range. Must be non-negative and less than the size of the collection. Parameter name: index

    ho provato anche a risalire tramite i findcontrol nella struttura di oggetti dal form verso la gridview, niente da fare.

    vi prego un aiuto, e' gia' una settimana che sclero

    (pizza e birra pagata al solutore )

  2. #2
    Utente di HTML.it L'avatar di fede_00
    Registrato dal
    May 2004
    Messaggi
    279
    ma l'obiettivo qual è?

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    10
    accedere ai valori di riga, utilizzando datakeynames (perche sono valori che non devono essere mostrati), dall'azione di pressione del selectbutton

    mi sta bene farlo anche con altro evento, purche' si possa passare il campo nascosto nel click sulla riga

    grazie

  4. #4
    Utente di HTML.it L'avatar di fede_00
    Registrato dal
    May 2004
    Messaggi
    279
    usa l'evento SelectedIndexChanged
    dentro ci scrivi:
    string pippo = GridView1.SelectedDataKey.Value.ToString();
    e pippo contiene il tuo valore associato al DataKey

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    10
    niente, object reference not set to an instance of an object

    riporto la porzioni di pagina non vorrei aver fatto qualche altro errore banale...

    <asp:GridView OnSelectedIndexChanged="selezionato2" enableviewstate="false" ID="risultt" DataKeyNames="ndistinta" AllowSorting="true" runat="server" AutoGenerateColumns="false" TabIndex="7">
    <Columns>
    <asp:buttonfield commandname="select" Text="Sblocca" buttontype="link"></asp:buttonfield>
    </Columns>

    e nel codice:

    Sub selezionato2(ByVal sender As Object, ByVal e As System.EventArgs)
    Me.appo2.Text += "valore = " + risultt.SelectedDataKey.Value.ToString


    grazie per l'aiuto!!

  6. #6
    Utente di HTML.it L'avatar di fede_00
    Registrato dal
    May 2004
    Messaggi
    279
    allora c'è dell'altro, quel riferimento a null punta ad un altro tipo di errore
    hai controllato d'aver eseguito il bind correttamente?
    ndistinta esiste nella sorgente dati?
    posta la parte di codice che fa il bind alla sorgente

  7. #7
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    10
    un po complicato postare tutto, il bind e' scatenato a seguito di una ricerca tramite un form; l'evento utilizza i valori inseriti negli input per pilotare una funzione che a sua volta chiama una store procedure

    funziona perche ovviamente vien fuori la tabellina del gridview dove ndistinta nella sorgente dati esiste (ed e' anche visualizzato nel gridview momentaneamente in debug)

    dici che devo rifare il bind prima di accedere a risultt.SelectedDataKey.Value.ToString ?





    ecco, mentre ti scrivevo ho provato e FUNZIONA!

    avevo provato a fare solo databind ma senza rifare popolamento al datasource!

    La pizza e' garantita, la tua traccia e' stata d'aiuto!

    :quote: :quote: :quote: :quote:

  8. #8
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    10
    sfruttando l'evento OnSelectedIndexChanged="selezionato2"

    Sub selezionato2(ByVal sender As Object, ByVal e As System.EventArgs)
    Me.cercadocumento(sender, e) 'riesegue funzione di query e databind
    Me.appo2.Text = "aggiornamento doc : " + risultt.SelectedDataKey.Value.ToString()

    riesco ad avere l'informazione, ma non mi spiego perche' devo far rifare una query

    nel primo metodo che ho seguito infatti non ce n'e' bisogno, cosa fara' mai una master pages alla pagina che funziona?

    riuscire ad evitare la query mi sembra interessante, in un'intranet certo non mi posso mettere a disegnare le pagine senza master pages...

    chi ha avuto la stessa esperienza?

  9. #9
    Utente di HTML.it L'avatar di fede_00
    Registrato dal
    May 2004
    Messaggi
    279
    difatti non capisco perchè rifai la query
    quando intercetti l'evento il bind è già stato fatto, tant'è che riesci a vedere in griglia il risultato della tua query perciò il tuo campo nascosto che contiene l'ndistinta è già stato renderizzato

  10. #10
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    10
    sono d'accordissimo, ma il codice non funziona!

    senza master pages funziona perfettamente, CON la master pages no...

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.