【问题标题】:i want to hide a save button in my master page?我想在我的母版页中隐藏一个保存按钮?
【发布时间】:2011-02-02 11:25:40
【问题描述】:

我有一个具有 view1 和 view2 的多视图。 view1 我必须将一些详细信息保存到我的数据库中,而 view2 我有一个 gridview。加载 view1 时,我想在母版页中显示保存按钮。如果加载 view2 保存按钮要从母版页隐藏

【问题讨论】:

  • 如果保存按钮仅出现在 view1 中,则将其移至 view1。

标签: c# asp.net


【解决方案1】:

您可以使用Page.Master 属性访问母版页。例如,

在母版页代码后面

public partial class MyMasterPage : System.Web.UI.MasterPage
{
   public void ToggleSaveButton(bool visible)
   {
     SaveButton.Visible = visible
   }

   // other code
   ...
}

在你的页面中

((MyMasterPage)Master).ToggleSaveButton(true);

【讨论】:

  • 您需要将布尔值传递给xToggle 函数吗?例如SaveButton.Visible = ! SaveButtonVisible;
  • @5arx - 注意点 - 也许,setSaveButtonVisibility 是合适的名称?顺便说一句,toggleX 可能有一个布尔值 - 请参阅 jquery 重载.toggle( showOrHide )。另一方面,切换功能在这里没有帮助,因为它需要在视图遍历中跟踪按钮状态。
  • @VinayC - 我不确定你的意思是什么 re: view traversal - 你能进一步解释一下吗?
  • @5arx,OP 正在使用多视图,他想在少数视图中显示保存按钮 - 因此,每当切换视图时,他都需要为当前视图设置保存按钮可见性(而不是切换位置当用户从视图 A 遍历到 B 时,需要确定视图 A 和 B 是否都具有相同的保存可见性要求 - 如果没有,则切换)。
  • 哦,现在我完全理解了。值得阅读的东西 - 非常感谢!
【解决方案2】:
Button button = Master.FindControl("your button id") as Button;
button.Visible = true;

【讨论】:

    【解决方案3】:

    如果您想在客户端执行此操作,您可以使用 JQuery 或 Javascript,因为母版页控件也将被呈现,因此您可以使用 JQuery : $("#ControlId").css("display","none") 、Javascript 轻松找到它:document.getElementById(...) 和将其显示设置为无。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-10-01
      • 1970-01-01
      • 2021-10-03
      • 1970-01-01
      • 1970-01-01
      • 2016-05-17
      • 2022-01-26
      • 1970-01-01
      相关资源
      最近更新 更多