我在响应UpdatePanel内的LinkButton回发时触发了以下事件处理程序。
protected void rptImages_ItemCommand(object source, RepeaterCommandEventArgs e)
{
//selection is only ItemCommand
string ID = (string)e.CommandArgument;
imgEdit.Style.Remove(HtmlTextWriterStyle.Display); //make the img visible
imgEdit.ImageUrl = GetImageURL(ID);
}
更新ImageUrl属性可以正常工作。但样式属性的“显示”部分仍然存在。在调试器中观察,集合的Keys和Value属性根本不会改变。好像只是忽略了对Remove()的调用。
我之前添加了显示样式标记:
imgEdit.Style.Add(HtmlTextWriterStyle.Display, "none");
......这很好用。如果我立即删除样式(与上面相同的代码),就像测试一样,也可以。但是相同的代码在事件处理程序中没有完成任何事情。
我在这里缺少什么?
答案 0 :(得分:2)
您不必使用添加/删除方法,您可以通过直接访问集合元素来更改样式,例如:
imgEdit.Style["Display"] = "block";