果汁UI儿童控制

时间:2012-04-17 21:39:36

标签: jquery asp.net vb.net controls juice-ui

我正在尝试使用JuiceUI中的容器控件。到目前为止,我已经使用了accordiontabs。它们是很好的控件,但我在这些控件的“内容”标签中更新子控件时遇到了问题。

对于手风琴,有一个PanelContent标签,对于标签,有一个TabContent标签,但为了简单起见,我们将专注于手风琴。

在PanelContent内部,我有一个标签。我需要用一些信息更新这个标签。由于我无法直接访问控件,我尝试从手风琴本身的FindControl转换控件。发生NullReferenceException。我也在AccordionPanel上尝试了同样的事情并且发生了同样的事情。所有这些都是有道理的。

在VBF上,一位成员指出该标签是PanelContent的子代。它没有ID属性,因此我无法直接从服务器端代码访问。所以我尝试从AccordionPanel访问它。我可以,但没有FindControl方法。

因此,我不确定如何从PanelContent标签中访问该标签。

但是,当我从AccordionPanel中提取PanelContent属性时,它有一个名为InstantiateIn的方法。它的智能感知描述如下:

  

Public Sub InstantiateIn(container As System.Web.UI.Control)When   由类实现,定义System.Web.UI.Control对象   子控件和模板属于。这些子控件都在   转换在内联模板中定义。

听起来就像我需要的那样。但我不太清楚如何使用它。 JuiceUI文档似乎并不完整,因为我在那里找不到任何关于此的内容。

任何想法,伙计们?

客户端:

<asp:UpdatePanel runat="server">
    <ContentTemplate>
        <table style="width: 99%;">
            <tr>
                <td class="style1">
                    <asp:Label ID="Label1" runat="server" Text="CSO:"></asp:Label>
                </td>
                <td>
                    <asp:TextBox ID="txtCSONumber" runat="server" CssClass="UpperCase" Width="115px"></asp:TextBox>
                </td>
            </tr>
            <tr>
                <td class="style1">
                    &nbsp;
                </td>
                <td>
                    <asp:Button ID="btnRetrieve" runat="server" Height="22px" Text="Retrieve" Width="120px" />
                </td>
            </tr>
            <tr>
                <td class="style1">
                </td>
                <td>
                    <asp:Label ID="lblMessage" runat="server" ForeColor="Red" Text="N/A" Visible="False"></asp:Label>
                </td>
            </tr>
        </table>
        <juice:Accordion ID="accSwrlHddRepl" runat="server">
            <juice:AccordionPanel runat="server" Title="HDD Information" ID="pnlHddInfo">
                <PanelContent>
                    <p>
                        <asp:Label ID="lblOriginalHDD" runat="server" Text="N/A"></asp:Label>
                    </p>
                </PanelContent>
            </juice:AccordionPanel>
        </juice:Accordion>
    </ContentTemplate>
</asp:UpdatePanel>

1 个答案:

答案 0 :(得分:0)

根据我的理解,还有一个尚未发布的JuiceUI的挂起更新,它为您的场景实现了'FindControl'方法。代码在它的源存储库中,但是nuget更新尚未发布。

您可以尝试一个名为Brew的分叉,它已具有该功能,并且是JuiceUI的近亲。