问题标签 [rendercontrol]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2784 浏览

asp.net - ASP.NET RenderControl 或 RenderChildren 失败

我需要使用 objChildControl.RenderControl 或 objControl.RenderChildren 来手动渲染我的子控件。但看起来这些方法是不完整的。

我所有的子控件都使用 OnPreRender 事件来注册客户端脚本和客户端样式表(因为这些只能在 prerender 事件中创建)。

我有 2 个主要问题,将当前 System.Web.UI.Page 对象传递给子控件并确保在这些子控件上触发 OnPreRender 事件。

似乎我不能在我的子控件上使用 RenderControl 方法,因为不会调用 OnPreRender 事件。但是,我可以通过 objChildControl.Page = Me.Page 传递 Page 对象

当我使用 RenderChildren 时,我无法传递 Page 对象,或者可以吗?而且我不确定当我使用 RenderChildren 时是否调用了 OnPreRender 事件。

一些帮助将不胜感激,因为我被卡住了;)

更新

我找到了一种获得所需结果的方法,但这不是我想要的解决方案。例子:

我想要的代码:

代码隐藏:objParentControl.Content.RenderControl(Writer)

然后上面提到的问题就开始了。如何确保将为 Content 中的所有子项调用 OnPreRender?

确实有效的代码(但 RenderControl 方法只是没用):

然后只需使用 wc:Content 控件的 RenderBeginTag 和 RenderEndTag。然后调用 OnPreRender 事件。但我不想通过使用 InnerProperty 将内容嵌入到父控件中。然后通过 RenderControl 或 RenderChildren 手动渲染子控件。

0 投票
1 回答
1231 浏览

asp.net - Asp.net RenderControl 方法不为下拉列表呈现自动回发

我有点困惑,为什么在使用 RenderControl 方法时,asp.net 不呈现 autopostback 属性设置为 true 的下拉列表。

例如

我的输出呈现的下拉列表没有 onchange="javascript:setTimeout('__doPostBack(\ddl1\',\'\')', 0)" 正常使用下拉列表时由 asp.net 生成的。

有解决办法吗?

0 投票
5 回答
2461 浏览

c# - 将 asp.net masterpage webform 输出到 html 电子邮件

嗨,我在这里做了一个噩梦!

我正在尝试使用 page.rendercontrol 和 htmltextwriter 将 web 表单输出到 html,但它会导致一封空白电子邮件。

代码:

我还通过渲染单个文本框进行了尝试,并得到错误提示它需要在表单标签内(位于母版页上)。

我尝试了此修复:http ://forums.asp.net/p/1016960/1368933.aspx#1368933 并添加:

VerifyRenderingInServerForm(Control control) { return; }

但现在我得到的错误是:

VerifyRenderingInServerForm(Control)':找不到合适的方法来覆盖

有没有人可以解决这个问题?我要拔头发了!!

谢谢,

史蒂夫

0 投票
1 回答
1294 浏览

.net - 将控件渲染到 Html 生成不同的字符串

我正在尝试呈现指向 html 的超链接。( ETC)

当页面加载它工作正常。(和很多 10 个链接)在更新面板上它会点击相同的功能并尝试获取另外 10 个链接。我将navigationURL设置为类似

它两次设置相同(加载和更新面板回发)但是当我第二次尝试将其呈现为 html 时(在更新面板上)它在前面添加“../”所以我最终得到

它在此处更改的功能

c 是具有属性 navigationurl 的超链接(这永远不会改变),但最终在加载时看起来像这样的 sw

这在面板更新

并且无法为我的生活找出 ../ 的来源!帮助 :)

0 投票
2 回答
1820 浏览

asp.net - ASP.NET MVC:如何将控件呈现到流?

因此,我在内存中渲染部分视图,以便将视图中的 XSL-FO 数据定向到 PDF 渲染器。

PDF 渲染器可以将字符串、XmlDocument 或 Stream 作为输入。

这是我想做的事情:(为清楚起见已编辑

解决方案取自:http ://thriftybliss.spaces.live.com/blog/cns!58DA805F37F31F20!170.entry?wa=wsignin1.0&sa=362921628

这是有效的方法,但我宁愿不这样做:

不幸的是,HtmlTextWriter 似乎不想写入 StreamWriter,或者我只是搞砸了别的东西。

如果我用 StringWriter 替换 StreamWriter 它可以正常工作,但我不能使用 StringWriter 因为当我调用 .ToString() 时,我会得到各种混淆 XSL-FO 的转义字符,并且渲染器会抛出“非法字符”异常。

我通过创建一个 XmlDocument 并将字符串加载到其中解决了这个问题,但这似乎是一种非常迂回的做事方式。我真的只想捕获 HtmlTextWriter 的输出并将其直接输入到渲染器中。有没有办法做到这一点?

谢谢!

0 投票
1 回答
867 浏览

asp.net - 将样式表链接添加到动态创建的页面对象

我正在创建一个 Page 对象并向其添加一个控件以用于打印目的。该代码有效,但是我找不到将样式表链接添加到标题的方法。在我粘贴的代码中,我尝试向标题添加链接,然后将标题控件添加到页面,但这会导致错误:

请求在此上下文中不可用 System.Web.UI.Page.get_Request() +8700216 System.Web.UI.HtmlControls.HtmlHead.RenderChildren(HtmlTextWriter writer) +83

0 投票
2 回答
5680 浏览

c# - 如何在 .net 中动态地将 css 样式/类添加到 HtmlTextWriterTag.Td?

我的控件的 RenderContents 方法中有以下 c# 代码。如何添加外部 css 文件中的样式/类?

0 投票
2 回答
2380 浏览

asp.net - WebPart RenderControl 不呈现内容

我有一个自定义 Web 部件,我试图在其上调用 RenderContents 方法,但结果仅包含 Web 部件的周围 div,而不包含任何子控件。

以这个简单的 Web 部件为例:

然后,在一个 http 处理程序中,我试图实例化这个 Web 部件并调用它的 RenderControl 方法。结果是<div class="myTestWebPart"></div>

有谁知道为什么我没有将 CreateChildControls 的控件也添加到输出中?

0 投票
1 回答
738 浏览

asp.net - RenderControl 可以输出 WebControl 标记而不是 HTML 标记吗?

我想利用 asp.net WebControl 类(TextBox、CheckBoxList、Button 等)来构建一个可以使用 TemplateControl.ParseControl() 解析为控件的字符串。

我正在使用以下代码从 WebControl 输出 HTML:

这输出:

是否可以输出以下内容?:

0 投票
3 回答
91347 浏览

asp.net - RegisterForEventValidation 只能在 Render 期间调用

我有一个将从 jquery ajax 调用的 webmethod:

(这是一种非静态方法,我们可以使用它。这不是问题)

执行 loadControl() 方法时,我收到一条错误消息:RegisterForEventValidation 只能在 Render 期间调用。

我已经为当前的 aspx 包含了 EnableEventValidation="false",也禁用了视图状态。但我仍然得到同样的错误。对此有什么想法吗?