首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用FindControl()查找控件

使用FindControl()查找控件
EN

Stack Overflow用户
提问于 2010-09-17 05:34:20
回答 5查看 55.8K关注 0票数 13

我有一个正在尝试定位的Literal控件,这样我就可以在其中插入文本。我有一个母版页,其中包含几个内容占位符。

代码语言:javascript
复制
<asp:Content ID="Content7" ContentPlaceHolderID="MainLinks" runat="server">
    <h3>Project Navigation</h3>
<ul class="rightColBoxNav">
<asp:Literal ID="litNavLinks" runat="server" />
</ul>
</asp:Content>

我一直收到"Object reference not set to a instance of an object“的提示。如何定位此对象才能找到并更新它?

我试过了:

代码语言:javascript
复制
((Literal)Page.FindControl("litNavLinks")).Text = sb.ToString();
((Literal)Page.Page.FindControl("litNavLinks")).Text = sb.ToString();
((Literal)Page.FindControl("Content7").FindControl("litNavLinks")).Text = sb.ToString();

无济于事。如何确定位置?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2010-09-17 05:40:39

在母版页中:

代码语言:javascript
复制
var literal = (Literal)FindControl("MainLinks").FindControl("litNavLinks");
literal.Text = sb.ToString();

在视图中:

代码语言:javascript
复制
litNavLinks.Text = sb.ToString();
票数 12
EN

Stack Overflow用户

发布于 2010-09-17 05:48:09

我会尝试一种不同的方法。

如何使用用户控件并公开相关属性来获取或设置文本值。

该属性将访问文本控件。但是,调用该属性的页面也不会更明智。

记住,我们生活在一个面向对象的世界里。

票数 1
EN

Stack Overflow用户

发布于 2010-09-17 05:50:58

我认为你必须这样做,但我现在还没有我的代码来仔细检查:

代码语言:javascript
复制
Page.Master.FindControl("MainLinks").FindControl("litNavLinks");
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3731007

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档