Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/257.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在asp.net中阅读自定义标记道具_C#_.net_Asp.net - Fatal编程技术网

C# 在asp.net中阅读自定义标记道具

C# 在asp.net中阅读自定义标记道具,c#,.net,asp.net,C#,.net,Asp.net,我使用的代码如下: <li id="x" runat="server" code="myCode"> ... 以下代码不在if中输入。所有从HtmlGenericControl派生的HtmlControl都有一个属性属性 该属性的类型为AttributeCollection,包含HtmlControl具有的所有属性 您可以按如下方式访问属性: // in aspx <li runat="server" id="MyLi" code="Test"></li>

我使用的代码如下:

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

以下代码不在if中输入。所有从
HtmlGenericControl
派生的
HtmlControl
都有一个属性
属性

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

您可以按如下方式访问属性:

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

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

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

好的,但我想找到所有具有此属性的控件。假设我不知道他们的ID。一旦你在HTML标签上有了
runat=“server”
,它就变成了
HtmlGenericControl
,你可以以面向对象的方式使用它。如果要查找所有
Label
控件或其他任何控件,则相同。
// in aspx
<li runat="server" id="MyLi" code="Test"></li>

// in code behind
var myCodeAttribute = MyLi.Attributes["code"];
<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"];        
   }
}