具有可变命名元素的usercontrols

时间:2013-04-24 18:06:00

标签: asp.net html

我一直在阅读msdn上的用户控件,我想知道如何处理可能变量的元素ID?

例如,假设我的页面上有usercontrol1.ascx,其中包含:

<div id="myPageDiv1">
     <div id="container1">
         Contents
     </div>
</div>

如果我需要不同页面的ID不同怎么办?

也许我需要另一个需要看起来像这样的页面:

    <div id="myPageDiv2">
     <div id="container3">
         Contents 
     </div>
</div>

由于

2 个答案:

答案 0 :(得分:2)

您可以向usercontrol添加一个属性,这样您就可以逐页更改它:

<强>用户控件

Public Property SomeDivID as String

<强> ASPX

<div id="<%= Me.SomeDivID %>">

</div>

网页

<control:yourusercontrol SomeDivID="myPageDiv1" runat="server" />

<control:yourusercontrol SomeDivID="myPageDiv2" runat="server" />

答案 1 :(得分:1)

您可以在用户控件中定义属性。

Public Property DivName As String 

您可以在代码隐藏中将其设置为所需的名称。您甚至可以从控制页面传递此信息。

DivName = "MyDesiredDivName"

然后,您可以在标记中使用鳄鱼语法来呈现属性的值。

<div id="<%= Me.DivName %>">
     <div id="container1">
         Contents
     </div>
</div>