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();
}
应大家要求截上效果图:
点击“是”
大家可以借鉴,欢迎大家一起交流。