2016-08-13 105 views
0

我需要顯示自定義messageBox並在操作完成時關閉它。 問題是messageBox顯示正常,但沒有添加標籤至極顯示消息,我只能看到空白區域......工作完成後,messageBox關閉工作正常。c#自定義messageBox顯示

這裏是代碼

public void resetirajSve() { 

     MyMessageBox poruka = new MyMessageBox(); 

     poruka.Show(); 
     analizaPodataka(); 
     glProstor.Rows.Clear(); 
     poruka.Close(); 
} 

我嘗試使用poruka.ShowDialog(),但隨後的代碼不會繼續執行。與ShowDialog方法標籤衝擊片雷管正常...

public partial class MyMessageBox : Form 
{ 
    public MyMessageBox() 
    { 
     InitializeComponent(); 
    } 
} 
+1

它似乎你有自定義類MyMessageBox?代碼 –

+0

在哪裏更新問題:) –

+0

你在談論MessageBox,但你的代碼打算使用Form。我瘦你不知道差異。 b/w MessageBox和表格 –

回答

0

一些指針:

1.看起來你的自定義MessageBox實際上是繼承了一個Form。默認的MessageBox相當通用 - see some examples,所以不需要重新發明輪子。專注於更重要的事情。

2.使用ShowDialog()將阻止在窗體上執行的所有操作,直到新打開的窗體(您稱之爲MyMessageBox,但它實際上是一個窗體)。

3.您可以添加一個ProgressBar控件來顯示任務的進度並使用等待遊標直到它完成。

4.爲避免程序窗口在方法執行完成之前無法響應(如果花費很長時間,可能會出現問題),您可能需要查看異步編程。 Here's an example.