c# - 找到一个 HtmlGenericControl

标签 c# asp.net

   System.Web.UI.HtmlControls.HtmlGenericControl div = (System.Web.UI.HtmlControls.HtmlGenericControl)pnl.Controls[0].FindControl("divMessage");

我正试图找到 divMessage 类似上面的东西,但我得到的是空...:

下面是我的 div 所在的位置。

 <mobile:Panel ID="pnl" Runat="server">
   <mobile:DeviceSpecific ID="device" runat="server">
            <ContentTemplate>
          <div id="divMessage" runat="server">test.....</div>
       </ContentTemplate>
          </mobile:DeviceSpecific>
 </mobile:Panel>

最佳答案

这应该可以找到您需要的 div:

var div = (HtmlGenericControl)pnl.Controls[0].FindControl("divMessage");

我创建了一个新页面并通过它进行了测试:

<%@ Page Language="C#" Inherits="System.Web.UI.MobileControls.MobilePage" %>
<%@ Register TagPrefix="mobile"
    Namespace="System.Web.UI.MobileControls"
    Assembly="System.Web.Mobile" %>

<script runat="server">

    protected void Page_Load(object sender, EventArgs e)
    {
        var div = (HtmlGenericControl)pnl.Controls[0].FindControl("divMessage");
    }

</script>
<body>
    <mobile:form id="form1" runat="server">

    <mobile:panel id="pnl" runat="server">
        <mobile:DeviceSpecific ID="device" runat="server">
            <Choice>
                <ContentTemplate>
                    <div id="divMessage" runat="server">test.....</div>
                </ContentTemplate>
            </Choice>
        </mobile:DeviceSpecific>
    </mobile:panel>

    </mobile:form>
</body>
</html>

div 变量包含您需要的控件。

关于c# - 找到一个 HtmlGenericControl,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5263086/

相关文章:

c# - 具有大量控件的 C#/.net 窗体的性能

c# - 无法转换类型为 '<>f__AnonymousType5` 6 的对象

asp.net - 如何确保网站不是从缓存中加载的

C# 将 Control.Top 从 16 位更改为 32 位 Int (WinForms)

c# - Tor NEWNYM 不使用 C#

c# - 通过按钮(asp.net)将字符串输入textbox.value(JavaScript)

c# - Azure Web 应用程序与 API 通信时出现 HTTP 错误 500 - 如何修复?

jquery - .net 和 jquery 突然给我 401 错误

c# - 动态地将 javascript 与 GridView 按钮绑定(bind)

c# - ASP.net:问号而不是阿拉伯文本