0
 <asp:accordionpane id="colors">

   <header> colors</header>

   <content>
    <div> blue </div>
    <div> red  </div>
    <div> gray </div>
   </content>

 </accordionpane>

有没有办法找到没有 div 并遍历循环
并将名称存储在数组中说字符串colors{} = accordionpane.div("blue"), accordionpane.div("red"), accordionpane.div("gray")

或者有没有办法找到一个手风琴有没有 div

4

1 回答 1

1

如果您想在服务器端访问它,请制作runat=server(甚至更好)。Panel否则你不能遍历它,colors.Controls因为它是空的。

<asp:accordionpane id="colors">

   <header> colors</header>

   <content>
    <asp:Panel id="pnlBlue" runat="server"> blue </asp:Panel>
    <asp:Panel id="pnlRed" runat="server"> red  </asp:Panel>
    <asp:Panel id="pnlGray" runat="server"> gray </asp:Panel>
   </content>

</accordionpane>

现在这个 Linq 查询可以工作了:

Dim panelText = From p In colors.Controls.OfType(Of Panel)()
    Select p.Controls.OfType(Of LiteralControl)().First().Text.Trim()
Dim count As Int32 = panelText.Count()
Dim allColors = String.Join(",", panelText)
于 2013-01-10T09:12:58.377 回答