創建一個公共財產或形式包含進度條
public void SetProgress(int progress)
{
progressBar.Progress = progress;
}
現在你可以用
myForm.SetProgress(50);
另一種方法更新進度條的公共方法是有一個ProgressChanged
某處的事件,並讓表單訂閱此事件。
public class Tool {
public event Action<int> ProgressChanged;
private void OnProgressChanged(int progress)
{
var eh = ProgressChanged;
if (eh != null) {
eh(progress);
}
}
public void DoSomething()
{
...
OnProgressChanged(30);
...
}
}
在表單中你會像這樣
private Tool _tool;
public MyForm() // Constructor of your form
{
_tool = new Tool();
_tool.ProgressChanged += Tool_ProgressChanged;
}
private void Tool_ProgressChanged(int progress)
{
progressBar.Progress = progress;
}
你有沒有在命令行工具的源代碼控制?該工具目前是否以任何方式表明進展?怎麼樣? –
進度反映在你想要完成的事情上。您需要找到一個反映當前任務的變量,該變量可以被監控並更新到進度欄。這將有助於你編輯你的文章的具體細節。 – Ari
你可以給我們一些你的代碼,並指出哪一部分需要進度條嗎?另外,你在什麼框架中構建你的GUI(WPF,Winforms?)? – EtherDragon