如何在c#类库中使用Messagebox

本文关键字:Messagebox 类库 | 更新日期: 2023-09-27 18:07:37

如何在类库中使用MessageBox ?

我的代码

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace MessageBoxes
{
    class ShowInfo
    {
        MessageBox.Show("test");
    }
}

我可以加载MessageBox,但不能有显示属性,MessageBox. show ("test");& lt;——失败

如何在c#类库中使用Messagebox

您应该类库中使用Windows窗体MessageBox。如果在ASP中使用这个库会怎么样?网络应用程序。MessageBox将显示在Webserver中。你的web服务器将等待(挂起),直到有人响应webserver中的MessageBox。

一个理想的设计是,你要么返回消息作为字符串,并以调用者特定的方式处理该字符串,要么抛出一个异常,如果这是你想要的。

如果你还想那么这里是你的代码更正

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace MessageBoxes
{
    class ShowInfo
    {
        public void ShowMessage(string msg)
        {
            MessageBox.Show(msg);
        }
    }
}

您可以在任何方法之外调用messagebox。
此代码根本无法编译。

你应该写

namespace MessageBoxes
{
    class ShowInfo
    {
        public void ShowUserMessage(string messageText)
        {
             MessageBox.Show(messageText);
        }
    }
}

,然后在实例化ShowInfo

类型的对象后调用它
ShowInfo info = new ShowInfo();
info.ShowUserMessage("This is a Test");

这个问题的补充答案:

类库项目创建完成后。

右键单击项目Add> New Item> Windows form

通过添加参考System.Windows.Forms.dll

完成

确保在主表单中实际使用了这个类。

class ShowInfo
{
    public static void show()
    {
        System.Windows.Forms.MessageBox.Show("test");
    }
}

    public Form1()
    {
        InitializeComponent();
        ShowInfo.show();
    }