如何使用反射读取webcontrol的style [“display”]属性的值

时间:2013-11-24 08:47:44

标签: c# asp.net reflection asp.net-webcontrol

我的页面上有一些用户控件和一些Web控件。要使用反射读取每个控件的Visibility属性,我在下面写了一行:

Object v;
if (control.GetType().GetProperty("Visible") != null)
     v = control.GetType().GetProperty("Visible").GetValue(control, null);

但是如何使用反射读取每个控件的样式[“显示”]属性的值?

提前致谢。

1 个答案:

答案 0 :(得分:0)

这是一个使用按钮的工作示例,仅用于演示目的。

必须将属性作为我们要查找的键的样式属性应用于它。

标记:

<asp:Button ID="Button1" runat="server" Text="Button" Visible="false" style="display:block;" />

代码背后:

var styleProp = Button1.GetType().GetProperty("Style");
        if (styleProp != null)
            {
                var styleCollection = styleProp.GetValue(Button1, null) as CssStyleCollection;
                var value = styleCollection["display"];
            }

您必须更换已经控制过的按钮。