Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    Disabilitare riga gridview in fase load

    Ciao a tutti, ho questo piccolo problema,
    ho due datagrid collegati a due tabelle, la prima contiene solo 3 campi della datagrid B.
    Ora quando visualizzo la pagina se nel datagrid A vi sono dei dati, le line uguali nel datagrid B devono essere disabilitate.
    Avevo pensato di inserire un codice simile nel databound :

    GridB.SelectedIndex(GridA.SelectedRow.Cells(1).Tex t
    GridB.SelectedRow.Enabled = False

    Ma non funziona neanche nell'evento Load. Qualche suggerimento?

  2. #2
    Ti faccio una domanda, GridB.SelectedRow che tipo di oggetto ritorna?

  3. #3

    Re: Disabilitare riga gridview in fase load

    Originariamente inviato da RiminiRimini
    Ciao a tutti, ho questo piccolo problema,
    ho due datagrid collegati a due tabelle, la prima contiene solo 3 campi della datagrid B.
    Ora quando visualizzo la pagina se nel datagrid A vi sono dei dati, le line uguali nel datagrid B devono essere disabilitate.
    Avevo pensato di inserire un codice simile nel databound :

    GridB.SelectedIndex(GridA.SelectedRow.Cells(1).Tex t
    GridB.SelectedRow.Enabled = False

    Ma non funziona neanche nell'evento Load. Qualche suggerimento?
    Prova ad usare il
    codice:
    RowDataBound (ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs)
    
    'Se la riga è da disabilitare metti
    e.Row.Enabled = False

  4. #4

    Ok

    Ciao e grazie della risposta, faccio subito delle prove.
    Per quanto riguarda la selectrow, dovrebbe darti l'indice di riga selezionata e disabilitandola funziona.

    Ho scritto questo codice:

    For Contatore = 0 To GridB.Rows.Count
    MsgBox("Valore A " & e.Row.Cells(1).Text)
    MsgBox("Valore B " & GridB.Rows(Contatore).Cells(1).Text)
    If e.Row.Cells(1).Text = GridB.Rows(Contatore).Cells(1).Text Then
    e.Row.Enabled = False
    Exit For
    End If
    Next

    Ora posto l'errore che mi da.
    Intanto come logica dovrebbe essere questa. Confronto tutti i campi del GridB con il valore che ho e se è uguale la disabilito.

  5. #5

    Risolto

    Posto il codice che se a qualcuno risultasse utile... mi farebbe piacere.


    If e.Row.RowType = DataControlRowType.DataRow Then

    For Contatore = 0 To GridA.Rows.Count - 1
    If e.Row.Cells(1).Text = GridA.Rows(Contatore).Cells(1).Text Then
    e.Row.Enabled = False
    Exit For
    End If
    Next

    End If

    Ovviamente Contatore è un Int16

  6. #6
    Scusa ma cosi si capisce poco, dovresti postare l'intero metodo, così almeno abbiamo
    anche una spiegazione di cosa sia e

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.