如果页面有两个用户控件引用,则在Web窗体应用程序中隐藏按钮

时间:2018-08-28 20:33:38

标签: webforms

我正在开发一个Web窗体应用程序,其中我的一个用户控件在多个页面上使用。是否有一个简单的if / else语句,如果未引用特定页面,该语句可以隐藏div。例如,我有一个按钮组同时显示在页面A和B中,但是如果该页面处于活动状态,则只需要它显示在页面B上。任何帮助将不胜感激。

这是我希望仅在一个用户控件上显示的按钮组:

<asp:Label ID="lblQty"  runat="server"  AssociatedControlID="txtQuantity">Quantity</asp:Label>

                        <div class="row">
                            <div class="col-xs-12 col-md-6">
                                <div class="input-group mb-3">
                                    <div class="input-group-prepend">
                                        <button type="button" class="btn btn-primary" onclick="changeQuantity('minus');" id="minus-btn"><i class="fa fa-minus"></i></button>
                                    </div>
                                    <asp:TextBox ID="txtQuantity"  cssClass="form-control form-control-sm"  runat="server" value="1" min="1" max= ClientIDMode="Static"></asp:TextBox>

                                    <div class="input-group-prepend">
                                        <button type="button" class="btn btn-primary" onclick="changeQuantity('plus');" id="plus-btn"><i class="fa fa-plus"></i></button>
                                    </div>
                                </div>
                            </div>                              
                        </div>

这是在两个不同的.ascx控件上显示的块。

1 个答案:

答案 0 :(得分:0)

您可以在ascx控件中添加一个公共属性:

@PathVariable

并在方法(或PreRender事件)中可以使用:

public string MyPage { get; set; }

您可以从B.aspx页设置属性

public void MyMethod()
{
   MyButton.Visible =  MyPage == "B";   
}