gpt4 book ai didi

asp.net - 允许服务器/用户控件上的任何属性/属性

转载 作者:行者123 更新时间:2023-12-02 16:16:19 25 4
gpt4 key购买 nike

我注意到,在 System.Web.UI.WebControls 命名空间中的大多数(如果不是全部)标准 Web 控件上,您可以向它们添加所需的任何属性,而不会导致页面崩溃。

以 asp:Button 控件为例。

此代码完全有效:

<form runat="server">
<asp:Button runat="server" Text="Test button" crapAttribute="crapValue" />
</form>

现在,我有一个自定义服务器控件,如果我向它添加任意属性,它就会崩溃。它只接受定义了相应公共(public)属性的属性。

我得到的错误是这样的“该控件没有名为“crapAttribute”的公共(public)属性”。

我希望我的自定义控件能够接受任何属性而不崩溃。我需要做什么才能使其发挥作用?

我查看了 Reflector 中的标准控件,它们确实具有各种属性和内容,但没有任何东西立即引起我的注意。

我的自定义控件继承了 WebControl 的值(value)。

最佳答案

您不必做任何特别的事情来允许将任意属性添加到控件标记中。从 WebControl 派生的事物通常会获取这些属性并将它们转储到 Attributes 集合中。

我想不出为什么会失败。如果有的话,您必须记住在 Render 实现中渲染 Attributes 集合。

您能否添加一个无法解决您的问题的新控件的代码的简单示例?

关于asp.net - 允许服务器/用户控件上的任何属性/属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1668197/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com