自定义MessageBox(对话框)Windows窗体C#

时间:2012-07-16 22:39:37

标签: c# winforms dialog messagebox showdialog

为了尝试使用对话框而不是MessageBox,我使用了下一个代码:

        static public DialogResult ShowDialog(string title, string largeHeading, string smallExplanation,
        string leftButton, string rightButton, Image iconSet)
    {
        using (BetterDialog dialog = new BetterDialog(title, largeHeading, smallExplanation, leftButton,
            rightButton, iconSet))
        {
            DialogResult result = dialog.ShowDialog();
            return result;
        }
    }

有关详情,请参阅此代码here

然后我使用按钮单击事件来调用对话框,如下所示:

        private void btnDialog_Click(object sender, EventArgs e)
    {
        BetterDialog dialogBox = new BetterDialog("Special Dialog", "large heading", "small explanation", null, "Ok", null);
        dialogBox.ShowDialog(this);
    }

我收到了错误:

'DotNetPerls.BetterDialog'不包含带有6个参数的构造函数。

出了什么问题,请问好吗?

2 个答案:

答案 0 :(得分:2)

我认为带有6个参数的BetterDialog构造函数是私有的(或受保护的)而不是公共的......

这意味着使用它的接口不是由构造函数,而是仅通过静态方法:

private void btnDialog_Click(object sender, EventArgs e)
{
    DialogResult result = BetterDialog.ShowDialog("Special Dialog", "large heading", "small explanation", null, "Ok", null);
    if (result == DialogResult.OK)
    {
       // Do what you want to do when OK button is pressed
    }
}

答案 1 :(得分:0)

在表单中添加一个图片框,然后使用Image.FromFile()