简体   繁体   English

中继器中的数据列表…仅从中继器获取标头

[英]Datalist inside Repeater … Only getting header from repeater

I am new to using the Repeater as well as the Datalist. 我对使用中继器和数据列表是陌生的。

I checked in the forum for the correct way to place a datalist inside a repeater. 我在论坛上检查了将数据列表放入转发器的正确​​方法。 Below is what I created, but it is only displaying the header of the repeater when I run it 以下是我创建的内容,但运行时仅显示转发器的标题

<div id="divMarketSnapshot" style="vertical-align: central; width: 100%; height: 450px; overflow: auto" runat="server">
<asp:Repeater ID="rptrRanks" runat="server" ViewStateMode="Disabled">
<HeaderTemplate>
    <table border="0" style="border-collapse: collapse; table-layout: fixed; width:100%;vertical-align:central">
        <tr style="height: 14pt; width:100%">
            <td class="xl6220798" colspan="33" style="text-align: left; font-weight: bold;width:99.99%"></td>
        </tr>
        <tr style="height: 14pt; width:100%">
            <td class="xl1520798" style="width:3.03%"></td>
            <td class="xl1520798" style="width:3.03%"></td>
            <td class="xl1520798" style="width:3.03%"></td>
            <td class="xl1520798" colspan="27" style="text-align: left;font-size:14pt; font-weight: bold;width:81.1%"><%# DataBinder.Eval(Container.DataItem, "EventRow_Group") %></td>
            <td class="xl1520798" style="width:3.03%"></td>
            <td class="xl1520798" style="width:3.03%"></td>
            <td class="xl1520798" style="width:3.03%"></td>
        </tr>
        <tr style="height: 14pt; width:100%">
            <td class="xl6220798" colspan="33" style="text-align: left; font-weight: bold;width:99.99%"></td>
        </tr>
    </HeaderTemplate>
    <ItemTemplate>
        <asp:DataList ID="dlRanks" runat="server" RepeatColumns="2" RepeatDirection="Horizontal">
            <HeaderTemplate>
                <tr style="height: 14pt; width:100%" runat="server">
                    <td runat="server" colspan="16" class="xl6620798" style="width:48.48%">
                        <a href="<%# DataBinder.Eval(Container.DataItem, "EventRow_ChartLink") %>"  " title="<%# DataBinder.Eval(Container.DataItem, "EventRow_EventDirectionDesc") %>" target="_blank"><%# DataBinder.Eval(Container.DataItem, "EventRow_Name") %></a>
                    </td>
                    <td class="xl1520798" style="width:3.03%"></td>
                </tr>
                <tr runat="server" style="width: 100%">
                    <td class="xl6720798" colspan="2" style="width: 6.06%; text-align: center">Date</td>
                    <td class="xl6720798" colspan="2" style="width: 6.06%; text-align: center">Market<br />Forecast</td>
                    <td class="xl6820798" colspan="2" style="width: 6.06%; text-align: center">RCG<br />Forecast</td>
                    <td class="xl6920798" colspan="2" style="width: 6.06%; text-align: center">Market<br />Actual</td>
                    <td class="xl7020798" colspan="2" style="width: 6.06%; text-align: center">RCG<br />Accuracy</td>
                    <td class="xl6920798" colspan="2" style="width: 6.06%; text-align: center">Equity Market<br />End Of Day</td>
                    <td class="xl7020798" colspan="2" style="width: 6.06%; text-align: center"><%# DataBinder.Eval(Container.DataItem, "EventRow_IndexHeader") %> Index<br />End Of Day</td>
                    <td class="xl7020798" colspan="2" style="width: 6.06%; text-align: center"><%# DataBinder.Eval(Container.DataItem, "EventRow_CurrencyHeader") %><br />End Of Day</td>
                    <td class="xl1520798" style="width: 3.03%"></td>
                </tr>
            </HeaderTemplate>
            <ItemTemplate>
                <tr style="width:100%">
                    <td class="xl7120798" colspan="2" style="width:6.06%; text-align: center"><%# DataBinder.Eval(Container.DataItem, "EventRow_DateTime") %></td>
                    <td class="xl7120798" colspan="2" style="width:6.06%; text-align: center"><%# DataBinder.Eval(Container.DataItem, "EventRow_Forecast") %></td>
                    <td class="<%# DataBinder.Eval(Container.DataItem, "EventRow_ForecastDirection_Change") %>" colspan="2" style="width:6.06%; text-align: center"><%# DataBinder.Eval(Container.DataItem, "EventRow_ForecastDirection") %></td>
                    <td class="xl7120798" colspan="2" style="width:6.06%; text-align: center"><%# DataBinder.Eval(Container.DataItem, "EventRow_Actuals") %></td>
                    <td class="<%# DataBinder.Eval(Container.DataItem, "EventRow_ActualMarketResult_Font") %>" colspan="2" style="width:6.06%; text-align: center"><%# DataBinder.Eval(Container.DataItem, "EventRow_ActualMarketResult") %></td>
                    <td class="<%# DataBinder.Eval(Container.DataItem, "EventRow_Equity_EOD_Change") %>" colspan="2" style="width:6.06%; text-align: center"><%# DataBinder.Eval(Container.DataItem, "EventRow_Equity_EOD_Price") %></td>
                    <td class="<%# DataBinder.Eval(Container.DataItem, "EventRow_Index_EOD_Change") %>" colspan="2" style="width:6.06%; text-align: center"><%# DataBinder.Eval(Container.DataItem, "EventRow_Index_EOD_Price") %></td>
                    <td class="<%# DataBinder.Eval(Container.DataItem, "EventRow_Currency_EOD_Change") %>" colspan="2" style="width:6.06%; text-align: center"><%# DataBinder.Eval(Container.DataItem, "EventRow_Currency_EOD_Price") %></td>
                    <td class="xl1520798" style="width:3.03%"></td>
                </tr>                                    
            </ItemTemplate>
            <FooterTemplate>
                <tr style="width:100%">
                    <td style="width:3.03%"></td>
                    <td style="width:3.03%"></td>
                    <td class="xl1520798_15" colspan="4" style="width:12.12%; text-align: left">Next Forecast:  <%# DataBinder.Eval(Container.DataItem, "EventRow_NextForecast") %></td>
                    <td style="width:3.03%"></td>
                    <td class="xl1520798_15" colspan="3" style="width:12.3%;text-align:center">Ultra Accuracy:  <span style="<%# DataBinder.Eval(Container.DataItem, "EventRow_UltraAccuracy_Style") %>"><%# DataBinder.Eval(Container.DataItem, "EventRow_UltraAccuracy") %></td>
                    <td colspan="7" style="width:21.21%"></td>
                </tr>
                <tr style = "width:100%">
                    <td class="xl6820798" colspan="33" style="width:99.99%"></td>
                </tr>
            </FooterTemplate>
        </asp:DataList>
    </table>
</ItemTemplate>

Code-behind on ItemDatabound: 在ItemDatabound上的代码隐藏:

Private Sub rptrRanks_ItemDataBound(sender As Object, e As RepeaterItemEventArgs) Handles rptrRanks.ItemDataBound 
    Dim dt As DataTable 
    Dim dlRanks As DataList = DirectCast(e.Item.FindControl("dlRanks"), DataList) 
    dt = TryCast(rptrRanks.DataSource, DataTable) 
    dlRanks.DataSource = dt 
    dlRanks.DataBind() 
End Sub

For the Datalist, I have 2 columns of data. 对于数据列表,我有2列数据。 The structure that I am looking for is as follows: 我正在寻找的结构如下:

Group
Event                                            Event
data col  data col   data col                    data col  data col   data col
data col  data col   data col                    data col  data col   data col
data col  data col   data col                    data col  data col   data col
data col  data col   data col                    data col  data col   data col

Footer information                               Footer information

Please let me know what I need to change so that it works properly. 请让我知道我需要更改的内容,以使其正常运行。

All, I found a link for doing Nested Repeaters. 全部,我找到了执行嵌套中继器的链接。 I am working with my code to get this correct. 我正在使用我的代码来解决这个问题。 Here is the link https://www.mikesdotnetting.com/article/57/displaying-one-to-many-relationships-with-nested-repeaters 这是链接https://www.mikesdotnetting.com/article/57/displaying-one-to-many-relationships-with-nested-repeaters

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM