Ver Mensaje Individual
  #4 (permalink)  
Antiguo 08/02/2005, 05:39
marccerdan
 
Fecha de Ingreso: septiembre-2004
Mensajes: 24
Antigüedad: 20 años, 6 meses
Puntos: 0
Hola,
En mi caso estoy haciendo un datalist2 dentro de datalist1, hasta aqui con el codigo que comentasteis arriba m'he funciona pefectamente, el problema lo tengo con los eventos de los controles que tengo dentro del datalist2, por ejemplo los linkbuttons que genera cada iteracion. El caso es que el Handler no me acaba de funcionar:

mi codigo es:
ASPX::
Código HTML:
<asp:datalist id="dlSeries" Runat="server" RepeatDirection="Vertical">

  <ItemTemplate>
    <asp:LinkButton ID="lbserie" CommandName='Serie' CommandArgument='<%# Container.DataItem("codi_serie")%>' Runat="server"><%# Container.DataItem("nom")%></asp:LinkButton>
  </ItemTemplate>

  <SelectedItemTemplate>
    <asp:Label ID="lserie" Runat="server" BORDERStyle="none"><%# Container.DataItem("nom")%></asp:Label>

    <asp:datalist id="dlSerieMenu" Runat="server" RepeatDirection="Vertical">
      <ItemTemplate>
        <asp:LinkButton ID="lbSerieMenu" CommandName='SerieMenu' CommandArgument='<%# Container.DataItem("url_" & Session("idioma"))%>' Runat="server" BORDERStyle="none"><%# Container.DataItem("titol_" & Session("idioma"))%></asp:LinkButton>
      </ItemTemplate>
      <SelectedItemTemplate>
        <asp:Label ID="lSerieMenu" Runat="server" BORDERStyle="none"><%# Container.DataItem("titol_" & Session("idioma"))%></asp:Label>
      </SelectedItemTemplate>
    </asp:DataList>

  </SelectedItemTemplate>

</asp:datalist> 
VB::
Código:
 'FUNCION QUE AMPLIA LA SERIE SELECCIONADA
    Private Sub Ampliar_Serie(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataListCommandEventArgs)
        dlSeries.DataSource = dvSeries
        dlSeries.SelectedIndex = e.CommandArgument - 1
        dlSeries.DataBind()
        dlSeries.RepeatLayout = RepeatLayout.Table
    End Sub
    'FUNCION QUE MUESTRA EL MENU DE LA PRUEBA SELECCIONADA
    Private Sub Ampliar_Serie_Menu(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataListItemEventArgs)
        If e.Item.ItemIndex <> -1 Then
            Dim dlSerieMenu As DataList
            dlSerieMenu = CType(e.Item.FindControl("dlSerieMenu"), DataList)
            If Not dlSerieMenu Is Nothing Then
                'codi per al datalist anidat
                dvSerieMenu.RowFilter = "f_codi_serie =" & e.Item.ItemIndex + 1
                dlSerieMenu.DataSource = dvSerieMenu
                'dlSerieMenu.SelectedIndex = e.CommandName - 1
                dlSerieMenu.DataBind()
                dlSerieMenu.RepeatLayout = RepeatLayout.Table
            End If
        End If
    End Sub
    Private Sub dlSerie_ItemCreated(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataListItemEventArgs) Handles dlSeries.ItemCreated
        If e.Item.ItemIndex <> -1 Then
            Dim dlSerieMenu As DataList
            dlSerieMenu = CType(e.Item.FindControl("dlSerieMenu"), DataList)
            If Not dlSerieMenu Is Nothing Then
                AddHandler dlSerieMenu.ItemCommand, AddressOf Obrir_SerieMenu
            End If
        End If
    End Sub
    Private Sub Obrir_SerieMenu(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataListCommandEventArgs)
        Dim Arxiu As System.IO.StreamReader
        Dim liniaText As String
        Dim ruta_prova As String
        'Fem un Checking del arxiu que volem carregar pq en cas que no existeixi no peti
        ruta_prova = ruta_server & "\bd\series\AR1\textos\maininfo_catala.html"
        If Not File.Exists(ruta_prova) Then
            Arxiu = File.OpenText(ruta_server & "\bd\error" & Session("idioma") & ".html")
        Else
            Arxiu = File.OpenText(ruta_server & "\bd\series\AR1\textos\maininfo_catala.html")
            'Arxiu = File.OpenText(ruta_server & "\" & e.CommandArgument)
        End If
        Do
            liniaText = Arxiu.ReadLine()
            SerieMenu_text = SerieMenu_text & liniaText
        Loop Until liniaText Is Nothing
        Arxiu.Close()
        'SerieMenu_text = "holaccccccccccccc"
    End Sub

El problema esta en la ultima funcion que controla los eventos que ocurren dentro del datalist interior.

Si alguien puede hecharme un cable...
Gracias
__________________
van rage
"If you don't, don't"