访问aspx页面中的用户控件方法

时间:2015-05-25 10:28:44

标签: c# asp.net twitter-bootstrap-3 user-controls

我有模态弹出窗口的用户控件,用于在必要时显示弹出窗口。

<div class="modal fade" id="myModal" role="dialog" aria-labelledby="myModalLabel"
    aria-hidden="true">
    <div class="modal-dialog modal-sm">
         <asp:UpdatePanel ID="upModal" runat="server" ChildrenAsTriggers="false" UpdateMode="Conditional">
            <ContentTemplate>
        <div class="modal-content">
            <div class="modal-header">
                <button type="button" class="close" data-dismiss="modal" aria-hidden="true">
                    &times;</button>
                <h4 class="modal-title">
                    <asp:Label ID="lblModalTitle" runat="server"></asp:Label></h4>
            </div>
            <div class="modal-body">
                <asp:Label ID="lblModalBody" runat="server"></asp:Label>
            </div>
            <div class="modal-footer">
                <button class="btn btn-info" data-dismiss="modal" aria-hidden="true">
                    Close</button>
            </div>
        </div>
        </ContentTemplate>
        </asp:UpdatePanel>
    </div>
</div>

后端

private string _Title = null;

public string Title
        {
        get
            {
            return _Title;
            }
        set
            {
            _Title = value;
            }
        }

private string _message = null;

public string Message
        {
        get
            {
            return _message;
            }
        set
            {
            _message = value;
            }
        }
protected void Page_Load(object sender, EventArgs e)
        {
        if (_Title != null)
            {
            lblModalTitle.Text = _Title;
            lblModalBody.Text = _message;
            ScriptManager.RegisterStartupScript(Page, Page.GetType(), "myModal", "$('#myModal').modal({backdrop: 'static',keyboard: false});", true);
            ScriptManager.RegisterStartupScript(Page, Page.GetType(), "myModal", "$('#myModal').on('shown.bs.modal', function () { $('#lblModalTitle').focus();})", true);
            upModal.Update();
            }
        }

现在我有aspx页面。用户点击后,生成服务器点击事件,操作结束后,我想用这个用户控件显示弹出窗口。

我应该怎么做?目前我使用方法和重写方法实现了接口,并在 aspx 页面中访问了该方法。

1 个答案:

答案 0 :(得分:0)

您可以在该部分或头部内容占位符中添加一个脚本块,以打开您的模态以及您想要在那里执行的任何其他操作。

<script type="text/javascript">
    function openMyModal() {
        $('#myModal').modal('show');
    }
</script>

然后你可以从代码隐藏

中调用该函数
ScriptManager.RegisterStartupScript(this, this.GetType(), "Popup", "openMyModal();", true);