Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    3,072

    Selected value in editmode

    Ciao a tutti, ho un DDL con valori inseriti direttamente nell'HTML e non tramite datasource.


    codice:
     
    <asp:TemplateField HeaderText="Titolo Studio" HeaderStyle-HorizontalAlign="Center">
    <ItemTemplate>
    <div align="center">
    <asp:Label ID="lblRispettato" runat="server" Text='<%# Eval("TitoloStudioRispettato") %>'></asp:Label>
    </div>
    </ItemTemplate>
    <EditItemTemplate>
    <div align="center">       
    <asp: DropDownList ID="ddlRispettatoEdit" runat="server">
    	<asp:ListItem></asp:ListItem>                
    	<asp:ListItem Value="OK">OK</asp:ListItem>
    	<asp:ListItem Value="NO">NO</asp:ListItem>
    </asp: DropDownList>  
    </div>
    </EditItemTemplate>               
    <ItemStyle Width="60px"></ItemStyle>
    </asp:TemplateField>

    Dove posso impostare il selectedvalue?

    nell' _RowUpdating oppure nel _Row_DataBound?

    e in che modo intercetto il campo da codice (C#)


    Esempio, nel _RowUpdating faccio

    DropDownList ddlRispettatoEdit = (DropDownList)gvElenco.Rows[e.RowIndex].FindControl("ddRispettatoEdit");


    ma questo è corretto nel _RowUpdating in quanto devo leggere il suo valore per poi eseguire la funzione di update... invece per impostare il selected value quando un utente clicca su "Edit" della grid, come devo procedere?

    Grazie

  2. #2
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    a parte che puoi mettere il SelectedValue anche direttamente nell'Html:

    codice:
    <asp:ListItem Value="OK" Selected="True">OK</asp:ListItem>
    Da codice puoi farlo nell'evento _RowEditing, DOPO le istruzioni di rito (perche' prima la DropDown non esiste)
    codice:
    protected void GridView1_RowEditing(object sender, System.Web.UI.WebControls.GridViewEditEventArgs e)
    {
       // Due classiche istruzioni che mettono la Grid in modalita' edit..
       GridView1.EditIndex = e.NewEditIndex;
       BindGrid(); // Metodo che crea un DataTable nel mio caso e lo associa alla Grid..
    
       // Ottengo la riga in edit
       GridViewRow rigaEdit = GridView1.Rows(e.NewEditIndex);
    
       // Recupero la DropDown ed imposto il SelectedIndex (o il SelectedValue - o il SelectedItem)
       DropDownList ddProva = new DropDownList();
       ddProva = (DropDownList)rigaEdit.FindControl("ddlRispettatoEdit");
       ddProva.SelectedIndex = 2;
    }

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    3,072
    Originariamente inviato da djciko
    a parte che puoi mettere il SelectedValue anche direttamente nell'Html:

    codice:
    <asp:ListItem Value="OK" Selected="True">OK</asp:ListItem>

    Si ma io non so a priori il valore ... è questo il mio problema, capire come assegnare il selected value quando vado in edit mode.

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    3,072
    Ho due problemi:


    facendo

    GridViewRow rigaEdit = gvElencoMansioni.Rows(e.NewEditIndex);

    ottengo

    Errore 64 Non-invocable member 'System.Web.UI.WebControls.GridView.Rows' cannot be used like a method. File.aspx.cs 1067 49



    come posso conoscere il valore da assegnare?? quello che tu imposti a "2"?

    Grazie infinite!

  5. #5
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    prova con le parentesi quadre, l'ho tradotto da VB

    il valore da assegnare non so da dove devi prenderlo....dalla riga ?

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.