- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
如何检查 ContentPlaceHolder 是否绝对为空?
在 ContentPlaceHolder 中只有文本,没有标签和控件。
示例 Page.Master:
<asp:ContentPlaceHolder runat="server" ID="Content" />
示例测试.aspx:
<asp:Content runat="server" ContentPlaceHolderID="Content">
Custom text without controls. Content.Controls.Count is 0 and Content.HasControls is false.
</asp:Content>
我需要做的是,当占位符为空时,将默认内容放在另一个控件中。
为同一个占位符尝试覆盖两次,但在动态加载时出现错误。
最佳答案
您可以实现一种将内容控件呈现为字符串的方法,然后检查该字符串以查找它是否包含任何非空白字符:
private bool HasContent(Control ctrl)
{
var sb = new System.Text.StringBuilder();
using (var sw = new System.IO.StringWriter(sb))
{
using(var tw = new HtmlTextWriter(sw))
{
ctrl.RenderControl(tw);
}
}
var output = sb.ToString().Trim();
return !String.IsNullOrEmpty(output);
}
protected void Page_PreRender(object sender, EventArgs e)
{
var placeholder = Master.FindControl("FeaturedContent");
var hasContent = HasContent(placeholder);
}
关于c# - 如何检查 ContentPlaceHolder 是否为空?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18345469/
这是我的 asp.net mvc 母版页的样子
我正在寻找一种动态加载母版页的方法,以便在其中获取 ContentPlaceHolders 的集合。 我宁愿不必加载页面对象来分配母版页,然后才能访问它的控件,但如果这是唯一的方式,我会很乐意使用它。
我有一个包含 2 个不同子页面的母版页。 如果我想在子页面中放入背景图片。这几乎有效,但是图像不会出现在 ContentPlaceHolder 中,而是出现在正文中。 body
我的项目中有两个母版页,一个用于 Web View ,另一个用于电子邮件。在 Web 母版页中是放置特定于页面的 JavaScript 的占位符,如果页面正在使用它,并且我尝试以编程方式更改母版页以作
我正在实现一个 Web 应用程序,我遇到了以下问题: 我有一个具有自己的样式和 js 文件的用户控件,当我将用户控件添加到页面并尝试验证 murkup 时,由于用户控件的样式和 js 位于页面正文中,
我希望能够使用任何 Html 解析器提取 contentPlaceHolder 的代码。问题是,我需要一个网址,但因为它是一个母版页,所以我无法拥有它。 实际上有一个 select 标签,您可以在其中
这是我第一次使用内容。我创建了一个包含所有样式等的完整 aspx 页面,它看起来像这样包含所有样式/ Bootstrap 等: 使用第一页作为引用,我将代码从中分离出来并将其复制到母版页中,并将所有导
我认为这应该是一个容易解决的问题,但是它变成了我无法解决的问题。 无论出于何种原因,我在 global-inner 中指定并在 MasterPage 中使用的背景图片 (main_bg.gif) 只会
我正在向 ContentPlaceHolder 中的 PlaceHolder 动态添加控件 var t = (ContentPlaceHolder)Master.FindControl("Conten
我有一个母版页,我的所有页面都继承了它。对于格式化,我想将一页与另一页不同的内容放在 ContentPlaceHolder 中。 现在,我如何将所有内容插入其中?由于我计划用数据库中的内容填充 Con
如何检查 ContentPlaceHolder 是否绝对为空? 在 ContentPlaceHolder 中只有文本,没有标签和控件。 示例 Page.Master: 示例测试.aspx:
尝试实现一个新的内容页面的“duh”时刻 这是结构 Master Page ---- Nested Master Page -------- Nested Master's Content Page
我刚刚实现了母版页来控制旧项目中的所有子页面。 我必须添加到我的所有子页面,以便它们能够正确呈现。 我的页面的一些特定功能包括来自 Button 的 javascript 调用使用下面示例中的命令:
当一切都在一个页面中时,我有一大堆 javascript 运行良好。现在我已经把它分开了,我不确定如何包含 javascript,在 master 中加入 HEAD 标签,而且,我有一些函数在 bod
我有一个母版页,头部有一些脚本: function example() { //some code here } 我希望有某种方法可以从
我正在尝试在单击超链接时显示的 MasterPage 中创建一个菜单。 YardimDokumaniMenuAHREF 是显示菜单的超链接。如您所见,当我点击它时调用了一个 javascript。但是
我有一个带有内容控件的母版页。如果使用了特定的内容占位符,我希望它在加载期间执行特定的操作。 APageWithContent.aspx hello world! MasterPage.a
我的母版页在 head 标记中有一个 contentplaceholder。 因为我希望我的页面标题代表当前页面的功能,并且因为我希望将标题翻译成用户的语言,所以我在页面头部的 contentplac
根据我所在的页面,我希望更改 javascript 函数的内容。 示例: 母版页 Cufon.now(); Cufon.replace('p#characters', { fontF
我可以将 Content PlaceHolder 与 Web 表单 View 引擎结合使用,将内容放置在母版页的不同位置。 如何使用 Razor 做到这一点?
我是一名优秀的程序员,十分优秀!