2012-07-16 74 views
0

爲了嘗試用一個對話框來代替的MessageBox我用下面的代碼:定製的MessageBox(對話框)Windows窗體C#

 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

我猜測,BetterDialog構造函數,6個參數是私人(或保護),而不是公共...

這意味着,接口使用它是不是由構造,而是通過靜態方法只:

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 
    } 
} 
+0

你的回答是對的,非常感謝。我會問另一個小問題:如何指定一個圖像顯示在對話框中的目錄? – 2012-07-16 22:53:48

+0

不客氣! – eyossi 2012-07-16 22:55:51

+0

@ eyossi,你見過我最後一個問題嗎? – 2012-07-16 22:59:59

0

將圖片框添加到您的表格中並使用Image.FromFile()