【问题标题】:Nested ASP.Net controls not defined未定义嵌套的 ASP.Net 控件
【发布时间】:2010-08-18 22:40:00
【问题描述】:

我有几个控件设置为 runat="server",但在后面的 vb 代码中显示为“未声明”。即使重新创建了 design.vb,也根本没有在 Designer.vb 文件中设置它们。

我认为可能导致这种情况的唯一原因是控件位于自定义控件内部。代码看起来像这样(由于 NDA 已被修改):

<abc:MyCustomControl>
  <additionalItems>
    <asp:CheckBox id="coolCheckboxOfPower" runat="server" Text="Triple Rainbow!">
    </asp:CheckBox>
  </additionalItems>
</abc:MyCustomControl>

所以使用上面的例子,如果我尝试在我的 vb 页面中使用coolCheckboxOfPower,它说它没有被声明。

有人建议我不能嵌套asp控件。这是真的吗?如果是,我该如何解决?

【问题讨论】:

  • 仅供参考,您的 abc:MyCustomControl 也应该有 runat="server"。

标签: asp.net vb.net


【解决方案1】:

Asp 控件当然可以嵌套。只需查看 asp:Panel、asp:ListView 等。在创建控件时,您必须做一些额外的工作才能实现这一点。即你必须在你的控件上有一个 ITemplate 属性。查看以下Building Templated Custom ASP.NET Server Controls 以帮助您入门

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-04-24
    • 2019-04-11
    • 2011-03-17
    • 1970-01-01
    • 2011-04-09
    • 1970-01-01
    • 1970-01-01
    • 2012-06-07
    相关资源
    最近更新 更多