usercontrol上的样式不起作用

时间:2011-08-16 08:25:10

标签: asp.net user-controls

为什么style属性不适用于usercontrol?

这是我的代码:

<uc1:ucCredit runat="server" ID="ucCCard" style="display:none;" />

注意:我不想设置Visible=false。执行此操作不会渲染元素,这是我不想要的,因为我正在操作样式并通过javascript显示它。

提前致谢:)

4 个答案:

答案 0 :(得分:7)

据我所知,用户控件没有style属性。快速解决方法是将您的usercontrol包装到<span/><div/>并为其提供适当的ID,然后在javascript中对其进行操作。

答案 1 :(得分:1)

这不起作用,因为<uc1:ucCredit>标记未呈现。

另一个想法可能就是这样:

标记:

<uc1:ucCredit runat="server" ID="ucCCard" Display="none" />

VB.NET:

Public Display as String

Sub Page_Load()
    If Not Display = Nothing then
        div.attributes("style") = string.format("display:{0};", display)
    End IF
End Sub

在此示例中,divdiv,它围绕用户控件中的内容

答案 2 :(得分:0)

您不能在那里使用style属性,因为usercontrol未呈现为HTML元素。 我建议把它包装成div。

<div style="display:none;">
    <uc1:ucCredit runat="server" ID="ucCCard"  />
</div>

答案 3 :(得分:0)

您可以在用户控件中创建一个属性,用于识别用户控件是否可见,并且您必须将所有控件放在面板中并将其显示设置为无