无法将CSS元素保留在ASP.NET列表框项上

时间:2012-04-02 17:58:15

标签: c# asp.net

我正在尝试将不同的列表项(具有不同的颜色属性)添加到ASP.NET中的CheckBoxList,这些项目使用正确的颜色正确添加到列表中。但是,在部分更新(它在更新面板中)时,所有属性都消失了。

有关如何解决此问题的任何想法? (这只是一个视图状态问题吗?)

这是我将元素添加到核对表框

的方式
ListItem newItem = new ListItem(strText);
if(condition)
newItem .Attributes.CssStyle.Add(HtmlTextWriterStyle.Color, "orange");
checkListBoxList.add(newItem);
updatePanelListBox.update();

谢谢!

1 个答案:

答案 0 :(得分:1)

如您所知,当页面回发时,HTML将被IIS发送给客户端(Client -> IIS WebServer -> ISAPI Extensions -> ISAPI load it/Execute it and send back the converted HTML -> Sends to IIS - > IIS sends back to Client)的响应替换。在Async PostBack的情况下,我假设您的CheckedListBox在更新面板内。在异步模式下的页面回发时,样式将被来自服务器的最新CheckedListBox HTML删除,样式实现将在新请求期间再次发生。最好将数据存储在ViewState中,并将其分配给异步回发。