0

在我的内容页面中,我有一个Telerik:RadWindow将用作弹出窗口的我有一个 asp:Panel 在这个 findPopup 中,如下所示。

<Telerik:RadWindow ID="findingPopup" runat="server" Modal="true" VisibleStatusbar="false" VisibleTitlebar="false" VisibleOnPageLoad="false" AutoSize="true">
    <ContentTemplate>
        <asp:Panel ID="pCheckListType" runat="server"></asp:Panel>
    </ContentTemplate>
</Telerik:RadWindow>

在此面板中,我动态添加了另一个 asp:Panel,其中包含一个 HTML 表和一个 DropDownList。它生成得非常好。我查看了如下页面源:

<div id="ctl00_cpBody_findingPopup_C_pCheckListType">               
<div id="ctl00_cpBody_findingPopup_C_pnlGenerated_51">
    <table id="ctl00_cpBody_findingPopup_C_tblGenerated_51" class="NoStyle">
        <tbody>
            <tr>
                <td>
                    <select name="ctl00$cpBody$findingPopup$C$ddList_51" id="ctl00_cpBody_findingPopup_C_ddList_51">
                        <option selected="selected" value="1" title="lt-master.app-tkn-flg">Face to Face</option>
                        <option value="2">Mail</option>
                        <option value="3">Phone</option>
                        <option value="4">Internet</option>
                    </select>
                </td>
            </tr>
        </tbody>
    </table>
</div>

问题是,我无法使用 Panel.FindControl 找到 DropDownList 以及查看FindControlRecursive问题。但是即使将根元素作为 Page 开始,我也没有得到 DropDownList。任何人都可以帮助我理解我做错了什么吗?

编辑: 我想我知道原因。动态创建的元素在回发时消失。有人对单击按钮时如何获取下拉列表的值有任何建议吗?

4

1 回答 1

0

我实际上是在重新创建控件。问题出在 ID 上。我不得不为他们分配一些 ID 号码,这些号码在回发时应该保持不变。这解决了我的问题。

于 2013-06-19T16:31:33.283 回答