【问题标题】:Save changes after modified the style of a div from Master Page从母版页修改 div 的样式后保存更改
【发布时间】:2014-08-27 02:46:49
【问题描述】:

我是 ASP.NET 的新手,我在从母版页动态更改 div 的 CSS 样式时遇到了一点问题。 例如:

HtmlGenericControl DivControl = (HtmlGenericControl)this.Page.Master.FindControl("Div");

DivControl.Attributes.CssStyle.Add("height", "200px");

一切正常,但是当我关闭我的网站并再次运行时,没有保存更改。 动态编辑样式后如何保存更改? 提前谢谢,对不起,我的英语。

【问题讨论】:

  • ..我认为动态更改丢失了 :) 所以你必须编辑样式表。
  • @Edward 为什么说更改没有保存?请描述发生了什么。
  • 例如:我有一个高度为 150 像素的 div,在我将高度动态更改为 200 像素后,当我关闭并再次运行我的网站时,div 的高度为 150 像素。谢谢
  • 但您的页面两次都在母版页中执行该代码。所以你不需要保存任何东西。这两个时间有什么区别?您在母版页的哪个位置运行该代码?
  • 您采取什么措施来关闭站点并再次运行?

标签: css asp.net


【解决方案1】:

如果你总是想要它,为什么不改变 css 文件呢?否则,您可以查看不同的事件处理程序并将代码放入匹配的事件处理程序中。如果您将该代码放在 Page_Load 事件中,它将在第一次访问页面时运行。

【讨论】:

  • 好吧,这是一种方法,但是是另一种方法吗?
【解决方案2】:

如果您想以您正在做的方式从 MasterPage 动态更改 div 的样式,请确保将代码放在页面生命周期的 Render 方法中。这将确保该控件存在,该控件不会被生命周期的其他状态更改,并且该控件将在每个请求上执行。

protected override void Render(HtmlTextWriter output) {
    HtmlGenericControl DivControl = (HtmlGenericControl)this.Page.Master.FindControl("Div");
    DivControl.Attributes.CssStyle.Add("height", "200px");
}

【讨论】:

  • 感谢您的回答和建议,但我有同样的问题。
  • 你应该设置一个断点,看看它是否被命中,因为这个代码必须在每次请求完成时调用。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-09-12
  • 1970-01-01
  • 2011-05-14
  • 1970-01-01
  • 1970-01-01
  • 2013-10-11
  • 1970-01-01
相关资源
最近更新 更多