我有以下代码:
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
string code = "111-222-73";
if (Namebox.Text == "" || Codebox.Text == "")
MessageBox.Show("Please fill a valid login!", MessageBoxIcon.Exclamation);
else if (Codebox.Text == code)
MessageBox.Show("Login succesfull!");
else MessageBox.Show("Wrong code!");
}
当我使用messageboxIcon时会抛出一个错误但如果我不使用它,则消息框将起作用。这也适用于其他消息框。有人可以告诉我为什么以及如何解决这个问题。
刚刚从vb.net切换到C#
答案 0 :(得分:1)
您未使用包含MessageBoxIcon
参数的正确overload:
MessageBox.Show("Please fill a valid login!", "",
MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
.NET框架中没有内置方法可以满足您的需求,但您可以创建一个帮助方法来执行此操作:
public static class MessageBoxHelper
{
const string _defaultCaption = "Message";
const MessageBoxButtons _defaultButtons = MessageBoxButtons.OK;
public static void Show(string message, MessageBoxIcon icon)
{
MessageBox.Show(message, _defaultCaption, _defaultButtons, icon);
}
}