问题标签 [asp.net-customcontrol]

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

c# - 只有一个自定义控件实例可以在页面中注册,如 scriptmanager

我正在创建一个自定义 Web 控件,我只需要一个用户可以在页面中添加的控件实例,就像scriptmanager.

我需要在自定义控件下进行此检查,但没有得到任何正确的方法,我知道通过迭代 page.controls 属性我可以检查控件的存在,但我想知道它只是一种方法吗?scriptmanager或者在页面中找到多个实例时,是否有任何其他通用/正确的方法来检查类似的情况。

0 投票
1 回答
776 浏览

asp.net - ASP .NET Web 应用程序内存泄漏 - 分析器显示大量字符串

我的 Web 应用程序不断达到分配给应用程序池的虚拟内存上设置的 IIS 限制。这会导致 IIS 停止应用程序。

我一直在尝试使用 .NET 内存分析器识别我的应用程序中可能存在的内存泄漏,到目前为止,GC 后保留的最大内存量似乎在字符串中。即使访问一页,内存使用量也会增长很多。

当我查看存储的字符串时,我发现重复的字符串,例如 SqlDataSource.SelectCommand 中使用的 SQL 查询

我的网站包含一个母版页,其中有一些用户控件。在其中一个用户控件中,我使用了一个 SqlDataSource,它从数据库中进行简单的选择,如下所示:

在控件的 Page_Load 我有:

我可以发现相同的字符串在内存中重复了数百次(可能是每次访问页面时)。

我错过了什么吗?我必须手动处理数据源吗?

谢谢

更新:

事实证明,大量字符串(包括 SQL 查询)保存在内存中,因为我有几个自定义用户控件,默认情况下显然使用 EnableViewState="true"

在为这些控件设置 EnableViewState="false" 之后(我不需要它)并且字符串不再填满内存

更新 1:

在生产中设置 EnableViewState="false" 后,应用程序池不再达到虚拟内存限制,所以问题解决了!

0 投票
2 回答
63 浏览

asp.net - ASP.NET WebCustomControl 事件 OnClick()

我想在 WebCustomControl 中将 OnClick 操作添加到我的按钮 (buttonSearch)。请帮助我,因为事件没有运行。我尝试在谷歌搜索,但我没有找到任何东西:(

PS。对不起我的英语不好 :)

非常感谢 :)

0 投票
1 回答
26 浏览

asp.net - 从 Web 窗体中的复合控件中的链接按钮获取单击事件

我创建了一个复合控件,其中包含许多图块(也是自定义控件)。在我的网页中,我想捕捉磁贴的点击事件,但我不知道如何。

这是 TileButton:(组件可以动态设计,但为了简单起见,我省略了这部分)

这是复合控件:

在页面中它包含这样的内容:

这一切都完美呈现,数据源已绑定,但现在我希望背后的代码在单击 tileButton 时执行某些操作。

额外:我希望 TileButton 有一个属性,该属性定义单击按钮时要做什么(某种类型的委托?)。对此有任何指示吗?

非常感谢。

0 投票
1 回答
94 浏览

jquery - 在母版页加载 jQuery 之前加载自定义控件的 jquery

我正在创建一个使用 jQuery.UI 自动完成功能的自定义控件。我的应用程序有一个标准的 Webform Masterpage,其中包含一个 ScriptManager 标记。

我正在嵌入一个包含以下代码的 javascript 文件。

在类本身中,我尝试了各种尝试,因为注册 js 文件试图在 MasterPage 中的 ScriptManager加载后加载 Jquery 代码,但没有成功。

因此,在测试页面的页面源中,Webresource.axd 在加载 Jquery 之前加载。

可以更改顺序吗?

0 投票
1 回答
70 浏览

webforms - 自定义 Web 控件 ID 包括子 ID

我的自定义 Web 控件 (ascx)

网页设备Move上的实现

在运行时 Custom:AutoCompleteTextBox 控件的客户端 ID 变为“HardwareSNTextBox1_AutoCompleteTextBox”。结果标记:

如果我想在 EquipmentMove 网页上编写一个名为“TestOnClosefunction”的 javascript 并且我想访问此控件,但使用它最初输入的 ID 为“HardwareSNTextBox1”而不是“HardwareSNTextBox1_AutoCompleteTextBox”,这是否可能?

编辑:我想如果使用此自定义 Web 控件的开发人员在编写他们的 js 时检查实际 ID 的标记,那么这可能会起作用。虽然不是很直观。

0 投票
0 回答
68 浏览

asp.net - 是否可以使用泛型类型创建自定义服务器控件是 ASP.NET

我试图在 ASP.NET 中创建一个具有泛型类型参数的自定义控件。我已阅读以下文章,这些文章提供了一个起点。

我已经实现了我认为的三个关键要素

  1. 具有 ControlBuilder 的非泛型类 (MyControl.vb)

  2. 通用基类 (MyControlBase.vb)

  3. 控件生成器 (MyControlBaseBuilder.vb)

Default.aspx页面如下所示:

我创建了一个简单的类MyClass来测试控件:

当代码运行时,我在浏览器中收到以下解析错误:

解析器错误消息:基类包含字段“TestId”,但其类型 (ServerControls.MyControl) 与控件类型不兼容 (ServerControls.MyControlBase`2[[TestSite.MyClass, TestSite, Version=1.0.0.0,文化=中性,PublicKeyToken=null],[System.Int32,mscorlib,版本=4.0.0.0,文化=中性,PublicKeyToken=b77a5c561934e089]])

我在上面列出的第二个链接中下载并运行了该项目,并得到了同样的错误。第二篇文章的作者Steven James Gray指出了这个错误并确认此功能在 ASP.NET 4 中不可用。

问题

  1. 在尝试使用泛型类型创建自定义控件时,我是否缺少任何关键点?
  2. 解析错误与情况有何关系

我正在使用以下内容:

  1. Visual Basic 2012 (VB11)
  2. 视觉工作室 2012
  3. 目标框架:.NET Framework 4.5