问题标签 [createchildcontrols]

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 回答
601 浏览

asp.net - 为什么要清除 CreateChildControls 中的控件

ASP.NET 复合控件的所有示例始终将子控件清除为 CreateChildControls 中的第一个操作。为什么是这样?据我了解,此方法始终通过 EnsureChildControls 调用,该方法设置一个标志以指示它已被调用,因此不会再次调用 CreateChildControls。

基础设施的其他方面是否调用了 CreateChildControls?如果是在什么情况下?

0 投票
4 回答
1166 浏览

c# - SharePoint AJAX 实施:ScriptHandler 被添加两次

我目前正在 SharePoint 环境中设置 AJAX 功能,以支持我使用 C# 创建的 Web 部件。我使用 Microsoft 的演练作为启动和运行的起点,我遇到了我认为是一个奇怪的错误。问题出现在 CreateChildControls() 中:

我遇到的问题是,由于某种原因,必须调用 CreateChildControls() 两次。当我单步执行代码时,它会执行有问题的每一行,然后返回第一行并重复。当它到达添加 ScriptManager 的倒数第二行时,它当然会引发异常,因为它试图使用相同的键向页面添加第二个 ScriptManager。也许这是我理解这个方法应该如何工作的错误,但我不明白为什么它被调用两次(或者无限递归,据我所知,如果没有抛出那个异常)。感谢任何人都可以给我的任何帮助。

0 投票
1 回答
402 浏览

c# - RadGrid 覆盖 CreateChildControls

我正在扩展 Tellerick RadGrid 控件,为其提供一个可选的 CustomSearchControl。

似乎 base.CreateChildControls() 必须有一个明确的控件调用,因为第一个 CustomSearchControl 消失了。

我尝试了这个:

但它会创建一个视图状态错误......因为两个控件都没有添加到视图状态,并且插入破坏了控件集合的层次结构。

0 投票
1 回答
870 浏览

sharepoint - 在共享点中回发(按钮单击)期间无法保留标签的值

在编写连接两个 webpart 的代码时,我创建了两个标签。两个标签的文本值都是用 OnPreRender 方法编写的。但是,我忘记在 CreateChildControl 方法中为一个标签添加控件。因此,在调试时,我注意到,在回发后,我忘记添加其控件的标签没有保留该值,并且显示为空字符串。但是我添加的另一个控件的标签能够保留该值

为什么会这样?

0 投票
2 回答
350 浏览

asp.net - 添加嵌套控件的正确 ASP.NET 控件事件/方法是什么?

ASP.NET 生命周期中动态添加子控件的正确事件/方法是什么?

我的目标是确保用户控件上的所有输入控件都具有正确的关联验证器和标签控件,基于来自外部文件的配置。

似乎正确的位置应该是 OnInit(EventArgs e)or CreateChildControls()。他们俩的行为都有些出乎意料,与其尝试调试他们每个人,我想我会先问你们使用哪一个(或其他)。

0 投票
1 回答
271 浏览

user-controls - createchildcontrol() - 用户控件、自定义控件、网页控件

我是.Net 的新手,试图在这里了解不同的控件。我知道,自定义控件,是现有控件的扩展。用户控件,在 .ascx 文件中构建的复杂控件,可以在应用程序的任何位置使用。我无法理解 createchildcontrol() 的概念并需要它。谢谢 !

0 投票
1 回答
902 浏览

asp.net - 如果我们不调用 base.createchildcontrols() 会发生什么

我只是想知道如果我们不将 base.createchildcontrols() 放入代码中会发生什么。是否会在不调用 base.createchildcontrols() 的情况下创建复合控件?

0 投票
1 回答
6897 浏览

c# - 删除动态控件:清除工作但不删除

我最近遇到了一个问题,我正在生成对下拉选择的动态控制。When the selection changes, I have to generate another set of dynamic controls, removing the existing controls.

所以我在做以下不起作用:

但是使用 Clear() 方法的类似代码工作正常。那我该怎么办呢?

通过此代码,所有控件(动态和静态)都被删除。那么该怎么办呢?

如果我做错了什么,请告诉我。

我在下拉选择更改事件触发时调用此方法。这些控件已添加到表中...

0 投票
0 回答
309 浏览

asp.net - 如何在 CompositeDataBoundControl 中保留子控件

CompositeDataBoundControl 类 ( http://msdn.microsoft.com/en-us/library/ms366539(v=vs.100).aspx ) 的文档说明如下:

这是扩展 DataBoundControl 类的基类,提供以下功能:

  • 实现复合控件所需的典型代码,包括在进行回发后从视图状态恢复控件的子控件层次结构的代码。
  • 绑定到 IEnumerable 数据源并枚举数据以构建控件树。
  • 作为数据绑定控件的基础,例如 GridView 和 DetailsView。

谁能解释或展示如何创建一个 CompositeDataBoundControl 的示例,该控件将在 PostBack 之后保留其控件而无需手动调用 DataBind?我的例子太复杂了,不能post,但是比如你绑定一个ListView,每个item都会在PostBack之后渲染。该文档似乎表明从此类继承时将自动处理此问题,但我无法做到这一点。

我可以看到,即使我不调用 DataBind,每次回发后都会调用 CreateChildControls,但数据源是一个空对象的 IEnumerable(一个 DummyDataSource,与回发之前在原始数据源中传递的数量相同) . 看来我应该对这个集合做点什么,但我不确定要创建的控件类型取决于该项目的类型(在这种情况下,我绑定到 PropertyInfo 列表并创建某个类取决于属性的属性)。

感谢您的任何帮助,您可以提供!

0 投票
1 回答
218 浏览

sharepoint - 覆盖 Sharepoint 的 Render 方法是否与覆盖 CreateChildControls 完成相同的事情?

根据我所阅读的内容(我是 SP 新手),ISTM 认为 CreateChildControls() 是向 WebPart 动态添加控件的首选方法,例如:

但是,我在这里的遗留代码中看到未使用 CreateChildControls();相反,我看到这样的代码,覆盖 Render():

...然后调用一个自定义方法来让 HTML 呈现:

以这种方式直接添加 HTML 是否比动态创建控件更可取,如上面 CreateChildControls() 中所示?