在Asp.Net中使用MessageBox类

时间:2012-01-04 07:51:02

标签: asp.net

我通过强制命名空间

在Asp.NET中使用带有C#的MessageBox类

使用System.Windows.Forms  我有以下代码:

/* Method for displaying the Message Box */
public void MsgBox()
{
    string message = "Do you want to modify the rate list?";
    string caption = "";
    MessageBoxButtons buttons = MessageBoxButtons.YesNoCancel;
    DialogResult result;
    result = MessageBox.Show(message, caption, buttons);
    if (result == DialogResult.Yes) {
        Response.Redirect("PaperRateList.aspx");
    }
}

/*Calling of the above method in the following event */
protected void Save_Click(object sender, EventArgs e)
{
    CompanyMaster_Insert();
    RateList_Save();
    MsgBox();  /*method*/  
}

现在的问题是消息框出现在最小化模式的窗体后面。在关闭消息bos之前可以关闭窗体。我想在窗体上显示此消息框,我想在关闭消息后关闭窗体框。

3 个答案:

答案 0 :(得分:3)

Web环境中的

MessageBox不是最好的选择,因为它是实现Windows窗体功能的一种廉价方式。

您有2种方法可以执行此操作,服务器端(如果需要处理某些数据)或客户端(如果您拥有页面中的所有数据,并且可以使用javascript处理它)。

对于你特别的例子,你可能有一个提交按钮,如:

<asp:Button id="btnSave" runat="server" 
            onclick="btnSave_Click" text="Save Form" />

尝试添加:

onclientclick="return confirm('Do you want to modify the rate list?');"

所以最终结果如下:

<asp:Button id="btnSave" runat="server" 
            onclick="btnSave_Click" text="Save Form"
            onclientclick="return confirm('Do you want to modify the rate list?');" />

这只是使用名为confirm的javascript方法。

要制作漂亮的MessageBox示例,并避免用户在消息可见时不要弄乱页面,它被称为模态对话模态窗口,请尝试搜索它......

jQuery UI有一个Modal element你可以使用,如果你喜欢AJax的东西并且你是ASP.NET的初学者,我强烈建议你试试ASP.NET Control Toolkit

答案 1 :(得分:1)

WebMsgBox类表示ASP.NET应用程序的消息框。这个类有一个静态方法Show,用于显示一个消息框。 Show方法接受一个字符串类型的参数,即您要显示的消息。

private void Page_Load( object sender, System.EventArgs e )
{
  MessageBox.Show( "Hello World!" );
  MessageBox.Show( "This is my second message." );
  MessageBox.Show( "Alerts couldnt be simpler." );
}

答案 2 :(得分:0)

您可以使用AJAXControlToolkit的ModalPopupExtender: ModalPopup Example