Pergunta

I now have two repeaters that need to look at 1 XML file but only the first one works.

The XML currently looks like:

<catalog>
    <categories>
        <ST>Example 1</ST> 
    </categories>

    <SOW>
        <hello>Data Displays</hello>                                                                                    
    </SOW>

</catalog>

My first repeater looks like:

 <form runat="server">
<asp:Repeater id="categories" runat="server">
<HeaderTemplate>
</HeaderTemplate>
<ItemTemplate>
<table width="832" border="0" bgcolor="#FFFFFF">


  <tr>
    <td width="134" align="left"  class="list-content-requirement" style="padding-left: 15px;">ST:</td>
    <td width="688" colspan="6" align="left" style="padding-left: 15px;"><%#Container.DataItem("ST")%></td>
  </tr>


 </table>
</ItemTemplate>
<footertemplate>
</footertemplate>
</asp:Repeater>  

and my second looks like this (which is straight after the first):

<asp:Repeater id="SOW" runat="server">
<HeaderTemplate>
</HeaderTemplate>
<ItemTemplate>
<table width="832" border="0" bgcolor="#FFFFFF">


  <tr>
    <td width="134" align="left"  class="list-content-requirement" style="padding-left: 15px;">hello:</td>
    <td width="688" colspan="6" align="left" style="padding-left: 15px;"><%#Container.DataItem("hello")%></td>
  </tr>


 </table>
</ItemTemplate>
<footertemplate>
</footertemplate>
</asp:Repeater> 
 </form>

Last but not least here is my script:

<script  runat="server">
Public Sub Page_Load()
    If Not Page.IsPostBack Then
        Dim cat As String = Request.QueryString("cat")
        Dim mycategories As DataSet = New DataSet()
        mycategories.ReadXml(MapPath("XML/" + cat + ".xml"))
        categories.DataSource = mycategories
        categories.DataBind()
    End If
End Sub

</script>

No errors are thrown up but the second repeater does not seem to work

Foi útil?

Solução

<script  runat="server">
Public Sub Page_Load()
    If Not Page.IsPostBack Then
        Dim cat As String = Request.QueryString("cat")
        Dim mycategories As DataSet = New DataSet()
        mycategories.ReadXml(MapPath("XML/" + cat + ".xml"))

        categories.DataSource = mycategories.Tables("categories")
        categories.DataBind()

        SOW.DataSource = mycategories.Tables("SOW")
        SOW.DataBind()

    End If
End Sub

</script>

Outras dicas

You haven't data bind your sow repeater control

Add

sow.DataSource = mycategories
sow.DataBind()
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top