Ext.net中的MessageBox的简单应用

今天在项目中要用到简单的MessageBox的使用。在Ext.net中没有Winform那么简单,直接写MessageBox.show()的方法。于是就去examples.ext.net的例子网站找,想找到个实际能用的。 地址:http://examples.ext.net/#/MessageBox/Basic/ButtonsConfig/

实例中,使用的方法貌似挺复杂的。

前台.aspx文件中

<%@ Page Language="C#" %>

<%@ Register Assembly="Ext.Net" Namespace="Ext.Net" TagPrefix="ext" %>
    
<script runat="server">
 [DirectMethod]
    public void DoConfirm()
    {
       X.Msg.Confirm("Message", "Confirm?", new MessageBoxButtonsConfig
        {
            Yes = new MessageBoxButtonConfig
            {
                Handler = "CompanyX.DoYes()",
                Text = "Yes Please"
            },
            No = new MessageBoxButtonConfig
            {
                Handler = "CompanyX.DoNo()",
                Text = "No Thanks"
            }
        }).Show();
    }

    [DirectMethod]
    public void DoYes()
    {
        this.Label1.Text = "YES";
    }

    [DirectMethod]
    public void DoNo()
    {
        this.Label1.Text = "NO";
    }
</script>

<!DOCTYPE html>

<html>
<head runat="server">
    <title>Confirm MessageBox with ButtonsConfig - Ext.NET Examples</title>   
    <link href="/resources/css/examples.css" rel="stylesheet" type="text/css" /> 
</head>
<body>
    <ext:ResourceManager runat="server" DirectMethodNamespace="CompanyX" />
    <form runat="server">
        <p>
            <ext:Button runat="server" Text="Confirm" Icon="Error">
                <Listeners>
                    <Click Handler="CompanyX.DoConfirm()" />
                </Listeners>
            </ext:Button>
        </p>
    </form>
</body>
</html>

效果图:

点击“Yes Please”

点击“No Thanks”

分别写两个函数,判断执行那个。每个函数都要在前面标记【DirectMethod】。感觉好复杂。后来找了下按钮的事件,发现了个简单的方法。

.aspx文件body中的代码如下:

<body>
<ext:ResourceManager runat="server" DirectMethodNamespace="CompanyX" />
<form runat="server">
<p>
<ext:Button runat="server" Text="Confirm" Icon="Error">
<DirectEvents>
                     <Click OnEvent="Confirm">
                          <Confirmation ConfirmRequest="true" Title="提示" Message="您确定要删除么?" />
                     </Click>
                </DirectEvents>
</ext:Button>
</p>
</form>
</body>

其实,可以直接在按钮中写,作用是在执行后台Confirm事件的时候,先弹出MessageBox框,上面两个按钮,是和否。如果选是,才执行后台事件,否则就不会跳转到后台。这个方法很好的解决了简单的提示框功能。

后台的Confirm事件代码:

 protected void Confirm(object sender, DirectEventArgs e)
{
X.Msg.Alert("点击提示", "您点击了确定,执行的是后台事件!").Show();
}

应大家要求截上效果图:

点击“是”

大家可以借鉴,欢迎大家一起交流。

posted @ 2012-03-25 19:02  然嗄  阅读(3783)  评论(2编辑  收藏  举报