powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Вопрос по рипитерам....Как быть?
2 сообщений из 2, страница 1 из 1
Вопрос по рипитерам....Как быть?
    #39489170
Santa89
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вобщем есть родительский ParentRepeater и вложенный ChildRepeater датасорс у которого опирается на параметр id из датасорса родительского рипитера :

Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
 <asp:Repeater ID="ParentRepeater" runat="server" DataSourceID="Sql_Datasources">
<ItemTemplate>
<h3>ID = <%# DataBinder.Eval(Container.DataItem, "id")%></h3>

                                        <asp:Repeater ID="ChildRepeater" runat="server" DataSourceID="SqlDatasourcesFeeds">
                                        <ItemTemplate>
                                            ****
                                            Feed:&nbsp;&nbsp;<%# DataBinder.Eval(Container.DataItem, "Feed_Caption")%>
                                            ***
                                        </ItemTemplate>
                                        </asp:Repeater>

</ItemTemplate>
</asp:Repeater>



                        <asp:SqlDataSource ID="Sql_Datasources" runat="server" DataSourceMode="DataReader" ConnectionString="<%$ ConnectionStrings:WH_ManagementConnectionString %>"
                            SelectCommand=
                            "SELECT
                            [id],
                            [name]
                            FROM [etl_info].[DATASOURCES]">
                        </asp:SqlDataSource>


                        <asp:SqlDataSource ID="SqlDatasourcesFeeds" runat="server" DataSourceMode="DataReader" ConnectionString="<%$ ConnectionStrings:WH_ManagementConnectionString %>"
                            SelectCommand=
                            "
                            SELECT
                            Feed_Caption
                            WHERE  id = @DatasourceID
                            ">

                               <SelectParameters>
                                    <asp:Parameter Name="DatasourceID" Type="Int32" DefaultValue="0" />
                               </SelectParameters>

                        </asp:SqlDataSource>




Так вот, если сделать такое событие:

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
    Private Sub ParentRepeater_ItemDataBound(sender As Object, e As RepeaterItemEventArgs) Handles ParentRepeater.ItemDataBound

        If e.Item.ItemType = ListItemType.Item OrElse e.Item.ItemType = ListItemType.AlternatingItem Then

            Dim Repeater2 As Repeater = DirectCast(e.Item.FindControl("ChildRepeater"), Repeater)
            Dim datasource As Integer = DataBinder.Eval(e.Item.DataItem, "id")


            SqlDatasourcesFeeds.SelectParameters("DatasourceID").DefaultValue = datasource
            Repeater2.DataBind()

        End If
    End Sub



То не получается корректного заполнения..
Например если поставить SqlDatasourcesFeeds.SelectParameters("DatasourceID").DefaultValue = XXX (какой то конкретный айди) - то во ВСЕ parent - рипитеры добавляется этот Feed_Caption, а этот Feed_Caption нужен только в зависимом parent рипитере ...

Надеюсь понятно описал проблему...
...
Рейтинг: 0 / 0
Вопрос по рипитерам....Как быть?
    #39489442
Santa89
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вопрос решился. надо было заполнять Parent Repeater в событии PageLoad и использоыать Hidden Field. Кому будет интересно - отвечу
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Вопрос по рипитерам....Как быть?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]