将动态dotnet webcontrol添加到静态html的属性值中

时间:2010-09-22 15:51:13

标签: .net

易于解释。有什么方法可以做到这一点:

<div id="header" style='<asp:Literal runat="server" ID="litBackgroundImage"></asp:Literal>' >

它看起来有效,但Visual Studio不会将litBackgroundImage识别为代码隐藏中的有效控件。将div设置为runat =“server”将不起作用,因为style属性是只读的。

感激不尽的任何建议

4 个答案:

答案 0 :(得分:1)

runat="server"添加到您的div,然后您可以从服务器端访问它,这样您就可以动态设置style属性。

答案 1 :(得分:1)

可能 工作:

HtmlControl headerDiv = (HtmlControl)this.FindControl("header");
headerDiv.Attributes.Add("class", **NAMEOFCSSCLASSTOUSE**);

我没有测试过,但它应该可行。您必须确保您的样式是css文件中的css类。

修改

经过测试,以上操作无效,但以下对我来说没问题:

<div id="header3" runat="server">This is header3 ...</div>

并在代码隐藏中:

header3.Attributes("style") = "height: 100px; background-color: red;"

答案 2 :(得分:0)

您是否将文字嵌套在<form>代码中?这是一个明显的答案,但值得一提。

答案 3 :(得分:0)

试试这个

<div id="div1" runat="server">...</div>

div1.Style["width"] = "100px";
div1.Style["color"] = "#FF0000";