血圧アプリその5
 2013年3月9日
Webアプリのボタンを大きくした。
そして処理中ダイアログ出してみた。
適当に作ったけど・・・
VSTOだとDoEventsとかしなくても平気なようだ。
[csharp]
// 処理中ダイアログ
WaitDialog waitDialog = new WaitDialog();
bool doWork = true;
new Thread(new ThreadStart(() =>
{
    if (waitDialog.ShowDialog() != System.Windows.Forms.DialogResult.OK)
        doWork = false;
})).Start();
// プログレスバー最大値
waitDialog.Invoke(new System.Windows.Forms.MethodInvoker(() =>
{
    waitDialog.Max = data.Count;
}));
foreach(var day in data)
{
    // プログレスバー更新
    waitDialog.Invoke(new System.Windows.Forms.MethodInvoker(() =>
    {
        waitDialog.Value++;
    }));
    // 処理中ダイアログが閉じられたら処理中断
    if (!doWork)
        break;
            :
            :
            :
}
[/csharp]

