Datalist中的多个更新面板。无法添加触发器

时间:2010-07-16 16:21:19

标签: asp.net triggers updatepanel

我的问题是这不能编译。我在UpdatePanel'UpdatePanelFiles'中找不到“带ID的控件'LinkBut​​tonRemove'。”

我要做的是在项目模板中有两个按钮。一个只更新ITEM,另一个更新整个DataList。 “LinkBut​​tonRemove”是我想要更新整个数据列表的内容。关于为什么这不起作用的任何想法?或者如何做我想做的事情?


THE SHORT VERSION:
UPDATEPANEL1
-DATALIST
--ITEM
---UPDATEPANEL2
----CONTROLS

我希望一个控件只更新项目更新面板,另一个控件更新整个数据列表。


       <asp:UpdatePanel ID="UpdatePanelFiles" runat="server" ChildrenAsTriggers="False" UpdateMode="Conditional">
            <Triggers>
                <asp:AsyncPostBackTrigger ControlID="LinkButtonRemove" />
            </Triggers>
            <ContentTemplate>
                <asp:DataList ID="DataListFiles" class="MediaManagerDataList" runat="server" ItemStyle-BackColor="#ffffff" AlternatingItemStyle-BackColor="#E7F4FF" OnItemCommand="DataListFiles_ItemCommand">
                    <ItemTemplate>
                        <asp:UpdatePanel ID="UpdatePanelItem" runat="server" UpdateMode="Conditional">
                            <ContentTemplate>
                                <div class="item">
                                    <asp:LinkButton ID="LinkButtonRemove" CommandName="remove" runat="server">Remove</asp:LinkButton>
                                </div>
                            </ContentTemplate>
                        </asp:UpdatePanel>
                    </ItemTemplate>
                </asp:DataList>
            </ContentTemplate>
        </asp:UpdatePanel>

2 个答案:

答案 0 :(得分:1)

updatepanel无法看到该按钮,但可以看到该列表。您可以跳过触发器部分,并在处理click事件时在代码隐藏中调用updatepanel.update()。

答案 1 :(得分:0)

您可以通过放置DataList的Id而不是linkbutton

来完成此操作