29 messaggi dal 26 luglio 2005
Salve Tribu!

E' ormai troppo che cerco di disincagliarmi, mi trovo costretto a rompervi per l'ennesima volta:

Ho un GridView che carico al load della pagina assegnandogli la collection degli utenti come segue:

  this.GrdViewMain.DataSource = Membership.GetAllUsers();
  this.GrdViewMain.DataBind();


Questa la definizione della mia GridView:

<asp:GridView ID="GrdViewMain" runat="server" AutoGenerateColumns="true" DataKeyNames="UserName"
      OnRowCommand="GrdViewMain_RowCommand" OnRowDataBound="GrdViewMain_RowDataBound"
      SkinID="MainGridView">
      <Columns>
        <asp:ButtonField ButtonType="Image" CommandName="DeleteRowByGrid" HeaderText="C"
          ImageUrl="~/Immagini/cancella.gif">
          <HeaderStyle ForeColor="Red" />
        </asp:ButtonField>
        <asp:ButtonField ButtonType="Image" CommandName="UpdateRowByGrid" HeaderText="A"
          ImageUrl="~/Immagini/modifica.gif">
          <HeaderStyle ForeColor="Blue" />
        </asp:ButtonField>
      </Columns>
    </asp:GridView>


Nel codice della mia pagina compare la definizione della procedura che risponde all'evento OnRowCommand :

protected void GrdViewMain_RowCommand(object sender, GridViewCommandEventArgs e)
  {
    if (e.CommandName.Equals("UpdateRowByGrid"))
    { .. }
  }


A differenza di altre pagine in cui legavo il dataSource del GridView con un SqlDataSource, in questa lo lego direttamente ad una collection.

Il mio problema è che quando clicco sulle immagini delle prime due colonne il flusso di esecuzione non entra più nella procedura dell'evento OnRowCommand designata.

Qualcuno sà indicarmi il motivo e/o soluzione?

Thank's a lot!

Memole.

---------------
Enjoy your mind
mmm, strano, dovrei provare. Comunque puoi usare Membership.GetAllUsers usando un ObjectDataSource che è più alla "asp.net 2".

Ciao

Il mio blog
Homepage
29 messaggi dal 26 luglio 2005
Ciao Cristian,

grazie per la tempestività. Me le dai due righe di dritta in formato codice per favore?

Come intendi "metodo alla 2.0" ?
Passando prima per un ObjectDataSource? Come lo popoli con Membership.GetAllUser() ?

Memole.

---------------
Enjoy your mind
3.121 messaggi dal 29 ottobre 2001
Contributi | Blog
memole <memole> ha scritto:
Ciao Cristian,

grazie per la tempestività. Me le dai due righe di dritta in formato codice per favore?

Come intendi "metodo alla 2.0" ?
Passando prima per un ObjectDataSource? Come lo popoli con
Membership.GetAllUser() ?

Forse Cristian intende questo:

<asp bjectDataSource ID="ObjectDataSource1"
Runat="server"
SelectMethod="GetAllUsers"
TypeName="System.Web.Security.Membership">
</asp bjectDataSource>

Ciao
29 messaggi dal 26 luglio 2005
Grande Magooo.. ;)

In effetti.. questo è l'approccio che preferisco! Molto comodi questi datasource che accettano strutture di oggetti oltre che alle solite base dati..

Ora tutto si è risolto.

Mi vien da chiedermi perchè mai se un GridView non è legato ad un controllo datasource che sia SqlDataSource o un ObjectDataSource.. non riesce a dirottare il flusso di esecuzione alla procedura designata per l'evento. Si comporta normalmente: classico postback per intenderci.. ma a vuoto.

Spero sia un problema di Beta version.. altrimente avrebbe più senso bloccare l'esecuzione o la compilazione con un eccezione in questo caso. Che ne dite?

Memole.

---------------
Enjoy your mind
3.121 messaggi dal 29 ottobre 2001
Contributi | Blog
memole <memole> ha scritto:
Mi vien da chiedermi perchè mai se un GridView non è legato ad un controllo datasource che sia SqlDataSource o un ObjectDataSource.. non riesce a dirottare il flusso di esecuzione alla procedura designata per l'evento. Si comporta normalmente: classico postback per intenderci.. ma a vuoto.

In effetti sono eventi del GridView che non dovrebbero centrare nulla con il datasource.

Spero sia un problema di Beta version.. altrimente avrebbe più senso bloccare l'esecuzione o la compilazione con un eccezione in questo caso. Che ne dite?

Ci sono ancora parecchie anomalie nella beta 2. Forse è una di queste. Non mi sbilancio oltre...

Ciao

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.