gpt4 book ai didi

c# - 在 asp.net 中读取自定义标签 Prop

转载 作者:太空宇宙 更新时间:2023-11-03 11:38:51 25 4
gpt4 key购买 nike

我正在使用这样的代码:

<li id="x" runat="server" code="myCode"> ...

是否可以遍历站点上的每个控件,检查它是否具有代码属性,如果是,则以任何方式处理它?<​​/p>

感谢您的帮助。

我使用的是 asp.net 2.0转换中的尝试返回 null,因此我无法控制属性

foreach (object control in this.Controls.ToString())
{
HtmlGenericControl gc = control as HtmlGenericControl;
if(gc != null)
{

if(gc.Attributes["code"] != null) ...

下面的代码没有进入if。全部

最佳答案

HtmlGenericControl 派生的 HtmlControl 具有属性 Attributes

该属性属于 AttributeCollection 类型,包含 HtmlControl 具有的所有属性。

您可以像这样访问属性:

// in aspx
<li runat="server" id="MyLi" code="Test"></li>

// in code behind
var myCodeAttribute = MyLi.Attributes["code"];

阅读更多相关信息:http://msdn.microsoft.com/en-us/library/system.web.ui.htmlcontrols.htmlcontrol.attributes.aspx

编辑:

为了迭代并有条件地确定哪些控件具有特殊属性,您可以这样做:

在 aspx 中

<ul runat="server" id="MyUl">
<li runat="server" code="Test1"></li>
<li runat="server" code="Test2"></li>
<li runat="server" code="Test3"></li>
<li runat="server" code="Test4"></li>
</ul>

在代码后面

foreach (var control in MyUl.Controls)
{
var htmlGenericControl = control as HtmlGenericControl;
if (htmlGenericControl != null && htmlGenericControl.Attributes["code"] != null)
{
var myCodeAttribute = htmlGenericControl.Attributes["code"];
}
}

您可能想整理一下并将其分解为方法,但我留给您了。

关于c# - 在 asp.net 中读取自定义标签 Prop ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5351116/

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